我想问一下为什么当我在PHP中回应这样的特定单元格时:
echo "$array[0][0]";
我得到类似:Array [0] 当我像这样回应它时:
echo $array[0][0];
我接受了价值。 只是好奇,无法理解为什么。 :/
答案 0 :(得分:2)
简单字符串插值语法允许解释一级数组:
"foo $array[0] bar"
这将计算字符串文字内变量的值。这是一个方便的功能,可以避免输入大量的连接操作符('foo ' . $array[0] . ' bar'
)。
还有复杂字符串插值语法,它允许嵌套表达式:
"foo {$array[0][0]} bar"
请参阅http://php.net/manual/en/language.types.string.php#language.types.string.parsing。
另一方面:
echo $array[0][0];
这将直接访问数组值,因为它不需要字符串插值规则的特定限制。
答案 1 :(得分:1)
如果使用"
,您可以将变量放在字符串中,但php无法猜测您是$array[0]
还是字符串[0]
,或实际变量$array[0][0]
。它猜到了第一个。
如果您想在字符串中执行此操作,请添加{
以显示变量是什么。
echo "{$array[0][0]}"