Если ваш массив всегда индексируется последовательно (например, 'page1' всегда с индексом '0'), это довольно просто:
$List = array('page1', 'page2', 'page3', 'page4', 'page5');
$CurrentPage = 3; // 'page4'
while (key($List) !== $CurrentPage) next($List); // Advance until there's a match
Лично я не полагаюсь на автоматическую индексацию, потому что всегда есть вероятность, что автоматическая индексация может измениться. Вам следует рассмотреть возможность явного определения ключей:
$List = array(
'1' => 'page1',
'2' => 'page2',
'3' => 'page3',
);
РЕДАКТИРОВАТЬ: Если вы хотите проверить значения массива (вместо ключей), используйте current()
:
while (current($List) !== $CurrentPage) next($List);