如何检查数组下一个索引是否在php中存在?

时间:2018-10-05 16:09:41

标签: php

我想检查数组下一个索引是否在php中存在。内容是动态的,因此我无法比较字符串,因为我不知道下一个数组值是什么,例如“ story4”,也可能是“ mogli-story”。

<?php
$story = array("story1","stroy2","story3")
?>

如果下一个索引可用,则打印下一个索引。如果下一个索引不可用,则将Story0打印到数组的第一个索引。我正在尝试像下面这样,但没有成功。

<p>The next story is: <?=((isset($story[$i]))?$story[$i]:'$story[0]');?><p>

3 个答案:

答案 0 :(得分:0)

我不确定我是否正确理解了您的问题,但这也许会有所帮助。

数组从0开始索引,表示此代码:

<?php
    $story = array("story1","stroy2","story3")
?>

具有 3 个索引,分别为0、1和2。

我不确定您如何在代码中定义$i,但我想这就是您想要的:

<p>The next story is: <?=isset($story[$i + 1]) ? $story[$i + 1] : $story[0];?><p>

(请注意,您不需要使用大多数括号。)

答案 1 :(得分:0)

您可以尝试使用xfeatures2dnext

current

函数<p>The next story is: <?=((next($story))?current($story):'$story[0]');?><p> 将元素移到下一个元素,next返回当前元素,如果数组结尾,current返回false。如果是php7

next

答案 2 :(得分:0)

我不确定,是否可以完全回答您的问题,但是您可以使用foreach循环:

<?php
$story = array("story1","stroy2","story3");

foreach($story as $entry) {
        print($entry.PHP_EOL);
}

如果需要动态检查阵列键,则可以使用array-keysarray-key-exists