我想做这样的输出:
echo <<<END
$monkey
END;
其中输出为'$ monkey'(即所有直到END的文本都被视为普通文本,而不是解析)
我想避免在END之前转义或修改任何文本。 那可能吗?
e.g。理想情况下,我想做这样的事情
echo '
loads of lines here
';
答案 0 :(得分:3)
在PHP 5.3中,您可以使用nowdoc:
$var = <<<'END'
$monkey
END;
否则,你总是担心逃避某些事情(heredoc上的所有转义代码和美元符号,双引号字符串和反斜杠上的双引号以及单引号字符串中的单个代码)。
答案 1 :(得分:1)
即使使用heredoc或nowdoc,如果您要在文本中显示文字END;
,仍会出现问题。唯一万无一失的方法是将文字文本放在一个单独的文件中,将其读入变量(例如file_get_contents
),然后回显该变量。