我有一个变量$foo
里面有一些id,我想在PHP的Heredoc字符串中使用它,如下所示:
$text = <<<TEXT
<div id="$foo_bar"></div>
TEXT;
明显的问题是 PHP 将 Heredoc 中的变量解析为$foo_bar
当然不存在。我想要的是解析$foo
变量,"_bar"应该被视为常规文本。
是否可以使用某种转义字符或无法实现?
PS:是的,我知道我可以使用带引号的字符串而不是 Heredoc,但我必须使用 Heredoc(我有大量带有引号的文本和代码等)。
在变量周围加上大括号,就像在带引号的字符串中一样。
$text = <<<TEXT
<div id="{$foo}_bar"></div>
TEXT;
改用此代码强制使用 $foo
.
$text = <<<TEXT
<div id="{$foo}_bar"></div>
TEXT;
大括号强制内容为变量。
或者,您可以在 HEREDOC 之前附加"_bar"。
$foo = $foo . "_bar";
$text = <<<TEXT
<div id="$foo"></div>
TEXT;