我想知道当数组看起来像这样时foreach()是否有效:
如果以:
运行,foreach将工作foreach(arr_name as $key => $value)
对于那些具有非数值的键?
答案 0 :(得分:4)
是的,foreach
支持任何类型的密钥。在您的情况下,$key
将分别为每个项目的字符串'eggs'
和'pencil'
。事实上,foreach
旨在用于具有非数字键的数组,您无法使用for
轻松迭代。
答案 1 :(得分:3)
是的,PHP在具有数字键和非数字键的数组之间没有真正的区别。就PHP而言,它们都是简单的数组。
答案 2 :(得分:1)
是的,BoltClock给出的解释是对的&我建议你手动试试。您在foreach语句
中的数组名称之前已经错过了$
foreach($ arr_name as $ key => $ value) echo $ value ?>