Skip to content

Instantly share code, notes, and snippets.

@adisetiawan
Created April 8, 2019 02:39
Show Gist options
  • Save adisetiawan/bb178e6f76c1ea8b3b130c021ba51c9e to your computer and use it in GitHub Desktop.
Save adisetiawan/bb178e6f76c1ea8b3b130c021ba51c9e to your computer and use it in GitHub Desktop.
<?php
// example code
$records = array(['satu' => 'satu', 'dua' => 'satu'],
['satu' => 'dua', 'dua' => 'dua'],
['satu' => 'tiga', 'dua' => 'tiga'],
['satu' => 'empat', 'dua' => 'empat'],
['satu' => 'lima', 'dua' => 'lima'],
['satu' => 'enam', 'dua' => 'enam'],
['satu' => 'tujuh', 'dua' => 'tujuh'],
['satu' => 'delapan', 'dua' => 'delapan'],
['satu' => 'sembilan', 'dua' => 'sembilan'],
['satu' => 'sepuluh', 'dua' => 'sepuluh'],
['satu' => 'sebelas', 'dua' => 'sebelas'],
['satu' => 'duabelas', 'dua' => 'duabelas'],
['satu' => 'tigabelas', 'dua' => 'tigabelas'],
['satu' => 'empatbelas', 'dua' => 'empatbelas'],
);
$total = count($records);
$percall = 15;
if($total >= $percall) {
$step = (int)floor($total/$percall);
(int)$rest = $total%$percall;
if($rest > 0) {
$step = $step + 1;
}
$stepArray = array();
$start = 0;
$end = $percall;
for ($i = 1; $i <= $step; $i++) {
if($i == 1) {
$start = $i;
$end = $percall;
} else {
$start = ($start + ($percall));
if($i == $step) {
$end = $total-1;
} else {
$end = ($end + ($percall));
}
}
$stepArray[] = array(
'start' => $start,
'end' => $end
);
}
} else {
$stepArray[] = array(
'start' => 1,
'end' => $total-1
);
}
foreach($stepArray as $key => $val) {
var_dump($val);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment