一尘不染

如何将Arrays内部指针设置到特定位置?PHP / XML

php

我正在尝试使用XML而不是数据库来构建一个小型站点。

我想建立一个下一个和上一个按钮,它将相对于我显示的内容起作用。

我发现了php函数next()和prev()以及current(),但是我不知道如何将指针设置到特定位置,以便能够相对于当前页面进行导航。

$list=array('page1','page2','page3')

例如,如果即时消息显示page2的内容,我如何告诉php我在$ list [1],以便next($ list)显示page3?

提前致谢


阅读 285

收藏
2020-05-29

共1个答案

一尘不染

如果您的数组始终被一致索引(例如,“ 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);
2020-05-29