作者:黑马@梦想 | 来源:互联网 | 2023-05-21 19:01
编辑:我在这些例子中使用wamp.
在foreach中必须有一些我没有想到的关于PHP和HTML替代语法的东西.
以下代码导致
注意:未定义的变量:第8行的index.php中的array1Value
注意:未定义的变量:第12行的index.php中的array2Value
1:
5:
6:
7: foreach($array1 as $array1Value): ?>
8: = $array1Value ?>
9: endforeach; ?>
10:
11: foreach($array2 as $array2Value): ?>
12: = $array2Value ?>
13: endforeach; ?>
14:
我也试过了
$array1 = ['value1', 'value2', 'value3'];
$array2 = ['value1', 'value2', 'value3'];
这里肯定有一些非常明显的东西,我只是愚蠢.
PS我知道我可以这样做:
6:
7:
10:
这是有效的,但我真的想了解为什么我的例子不起作用.
1> CBroe..:
你每个只收到一个警告,对吧?
那是因为你的循环实际上没有执行 - 因为你
只使用了你的foreach语句,如果short_open_tags
关闭了,这意味着你的循环语句根本不执行 - 所以变量不是首先设置的.但是,然后你尝试使用它们输出它们=
,无论前面提到的设置如何都可以.
(并且在你修复之后,你仍会得到第二个循环的警告,因为在foreach
你使用$array2Value
大写字母的语句中V
,但是在循环中$array2value
使用小写字母v
.)