Нужно немного помочь с этим скриптом. Он работает, но мне бы хотелось немного упростить его.
На данный момент у меня есть «if ($ currentPageIndex == 4)« Мне нужно вручную обновлять «4» каждый раз, когда я добавляю или удаляю элемент из массива projectlist. Мне нужно что-то сказать «if ($ currentPageIndex == последний элемент массива )» Таким образом, я могу добавлять / удалять элементы, не беспокоясь об обновлении номера.
Как мне это сделать? Я читал о различных вариантах и пробовал вещи без везения.
Также, если это возможно, решение может быть использовано и для ссылок Prev & Next? Поэтому вместо +4 и -4 он переходит к первому и последнему пункту соответственно.
Любая помощь очень ценится.
Рабочая демонстрация здесь: http://www.ok-hybrid.com/projects/monkey/ Код здесь:
<?php $currentPath = explode('?', $_SERVER['REQUEST_URI']); //make sure we don't count any GET variables! $currentPath = $currentPath[0]; //grab just the path $projectlist = array( '/projects/monkey/', '/projects/tiger/', '/projects/parrot/', '/projects/banana/', '/projects/aeroplane/', ); if(! in_array($currentPath, $projectlist) ) { die('Not a valid page!'); //they didn't access a page in our master list, handle error here. } $currentPageIndex = array_search($currentPath, $projectlist); if($currentPageIndex > 0) { $prevlink = '<a href="'.$projectlist[$currentPageIndex-1].'">Prev</a>'; } else { $prevlink = '<a href="'.$projectlist[$currentPageIndex+4].'">Prev</a>'; } if($currentPageIndex == 4) { $nextlink = '<a href="'.$projectlist[$currentPageIndex-4].'">Next</a>'; } else { $nextlink = '<a href="'.$projectlist[$currentPageIndex+1].'">Next</a>'; } ?> <ul id="sub-nav"> <li> <?php print_r($prevlink); ?> </li> <li> <?php print_r($nextlink); ?> </li> </ul>