niko42
Новичок
Добрый день.
В моей работе потребывалось сделать постраничную навигацию.
Я написал свой алгоритм и назвал её "Рулетка".
Но есть один минус, не знаю на сколько это будет эфективно, хотелось бы услышать замечания по коду. Спасибо!
В моей работе потребывалось сделать постраничную навигацию.
Я написал свой алгоритм и назвал её "Рулетка".
Но есть один минус, не знаю на сколько это будет эфективно, хотелось бы услышать замечания по коду. Спасибо!
PHP:
/**
* @see Рулекта
* @param int $count_page //Количество страниц
* @param int $page // номер активной страницы
* @param int $tmp // сколько value нужно вернуть при условии, что $count_page > $tmp
* @return array
*/
public static function roulette($count_page = 0, $page = 1, $tmp = 10){
$count_page = ceil($count_page);
$arr = array();
if($page > $count_page){
return $arr; // или return Ошибку
}
for($i = 1; $i <= $tmp; $i++){
if($count_page > $tmp){
if($page > $count_page - 5){ // конец рулетки
$arr[] = $count_page - $tmp + $i;
continue;
}
if($page > 5){ // середина рулетки
$arr[] = ($page + $i) - 5;
continue;
}
}
if($i > $count_page)
break;
$arr[] = $i; // начало
}
return $arr;
}
Последнее редактирование: