3

一段时间以来,我一直在为一些关于 php 的奇怪事情而苦苦挣扎。

似乎无法使用一行代码显示某些字符串和多维数组元素。

例如,我们有一个简单的 3d 数组:

$ARRAY = array('first' => array(array('Hello, World!')));

现在,如果我想显示一些字符串和第 3 级元素,我将不得不这样做:

$a = $ARRAY['first'][0][0];
echo"Some string: $a";

或这个:

echo"Some string: ";
echo($ARRAY['first'][0][0]);

那么有没有什么方法可以只用一行代码来实现呢?谢谢!

4

3 回答 3

10
echo "Some string: {$ARRAY['first'][0][0]}";

在PHP.Net上阅读更多内容

复杂(卷曲)语法

这不是因为语法复杂而被称为复杂,而是因为它允许使用复杂的表达式。

任何具有字符串表示的标量变量、数组元素或对象属性都可以通过此语法包含在内。只需将表达式写成与它出现在字符串之外的相同方式,然后将其包装在 { 和 } 中。由于 { 无法转义,因此只有在 $ 紧跟 { 时才能识别此语法。使用 {\$ 获取文字 {$。一些例子可以清楚地说明:

于 2012-06-18T15:05:11.037 回答
2

使用串联

echo "Some string: " . $ARRAY['first'][0][0]);

或者

echo "Some string: ", $ARRAY['first'][0][0]);
于 2012-06-18T15:03:06.957 回答
2

echo "Some string: {$ARRAY['first'][0][0]}";

于 2012-06-18T15:04:59.557 回答