我一直在努力解决关于php的一些奇怪的事情。
似乎无法使用一行代码显示某些字符串和多维数组元素。
例如,我们有一个简单的3d数组:
$ARRAY = array('first' => array(array('Hello, World!')));
现在,如果我想显示一些字符串和第三级元素,我将不得不这样做:
$a = $ARRAY['first'][0][0];
echo"Some string: $a";
或者这个:
echo"Some string: ";
echo($ARRAY['first'][0][0]);
那么有没有办法在一行代码中实际执行此操作? 谢谢!
答案 0 :(得分:9)
echo "Some string: {$ARRAY['first'][0][0]}";
了解详情
复杂(卷曲)语法
这不称为复杂,因为语法很复杂,但因为它允许使用复杂的表达式。
可以通过此语法包含任何具有字符串表示形式的标量变量,数组元素或对象属性。只需以与字符串外部相同的方式编写表达式,然后将其包装在{和}中。由于{无法转义,因此仅当$紧跟{时,才会识别此语法。使用{\ $获取文字{$。一些例子说清楚:
答案 1 :(得分:2)
echo "Some string: " . $ARRAY['first'][0][0]);
或
echo "Some string: ", $ARRAY['first'][0][0]);
答案 2 :(得分:2)
echo "Some string: {$ARRAY['first'][0][0]}";