PHP在带有花括号的字符串中嵌入数组元素

Joh*_*che 8 php

我想知道在以下上下文中使用花括号的优点是什么:

$world["foo"] = "Foo World!";
echo "Hello, {$world["foo"]}.\n";
Run Code Online (Sandbox Code Playgroud)

超过以下:

$world["foo"] = "Foo World!";
echo "Hello, $world["foo"].\n";
Run Code Online (Sandbox Code Playgroud)

特别是,在这种情况下(或类似情况),大括号如何解决任何可能的歧义?

Ria*_*iaD 7

第二个例子不会被解析.所以首先是更好的:)

无论如何,我更喜欢使用

echo "Hello" . $world["foo"] . ".\n";
Run Code Online (Sandbox Code Playgroud)

因为它更容易给我读.

此外,还有另一种方式:

$world["foo"] = "Foo World!";
echo "Hello, $world[foo].\n";
Run Code Online (Sandbox Code Playgroud)

没有任何反复使用这一个或另一个.你是你(或你的团队)喜欢什么.

  • 我绝对讨厌后一个例子.PHP有足够的不一致性,我们不得不处理. (2认同)

tub*_*035 5

请参阅“回声”解释的其他答案,但如果您使用的是heredoc,例如以下内容:

echo <<<EOHTML
<td>{$entity['name']}</td>
EOHTML;
Run Code Online (Sandbox Code Playgroud)

您需要花括号才能正确使用关联数组。