我有一个用符号制作的列表每个项目之间。在这里,我想循环遍历这些项目。这里的问题是循环创建一个空值的额外循环。这里不应该显示这个额外的循环。
我做错了什么?
PHP:
<?php
$variable['value'] = Something here|Another thing here
$loop = explode("|", $variable['value']);
for($x='0';$x<=count($loop);$x++) {
echo "<span class='icon-caret-right'>";
echo $loop[$x];
echo "</span>";
}
?>
答案 0 :(得分:2)
首先:for
循环中的条件不正确 - count
值始终等于最大索引+ 1,因此您可以将其更改为{{1} }或$x=0; $x<=count($loop)-1; $x++
第二:不要在循环条件中使用$x=0; $x<count($loop); $x++
- 因为它是在每一步计算的,而你不想要它 - 改为使用count
。
第三次:为什么foreach
? $x='0'
应该是一个整数,所以$x
答案 1 :(得分:0)
制作以下条件
for($x=0;$x<count($loop);$x++) {
从条件中删除“&lt; =”。
for($x='0';$x<=count($loop);$x++) {
答案 2 :(得分:0)
因为你的起始索引是0所以从for条件中删除“=”或者你可以从1开始x的值。两者在逻辑上是相同的。
for($x=0;$x<count($loop);$x++)
或
for($x=1;$x<=count($loop);$x++)