LINUX.ORG.RU

Рациональный способ вывод списка страниц (их может быть много)


0

1

Надо вывести ссылки на ближайшие страницы к текущей. При одинаковом количестве страниц, ссылок должно быть одинаковое количество.

Конкретно надо найти первую ($sp) и последнюю ($ep) ссылки из количества страниц всего ($i) и номера текущей страницы ($p). Духом чую что здесь есть какое-то простое решение на две строчки, а я конкретно туплю и пока вот только до такого арифметического былокода додумался:

$sp = $p - 10;
$ep = $p + 10;
if ($sp < 0) {
	$ep = $ep - $sp;
	$sp = 0;
}
if ($ep > $i) {
	$sp = $sp - ($ep - $i);
	if ($sp < 0) {
		$ep = $ep - $sp;
		$sp = 0;
	}
	$ep = $i;
}

Перемещено maxcom из linux-org-ru

Ответ на: комментарий от Elyas

Хорошая идея. Спасибо. Тогда вот так:

$sp = max (0, $p - 10);
$ep = min ($sp + 21, $i);
$sp = max ($ep - 21, 0);

moscwich
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.