该语法在PHP中的特殊用途?(三重'角括号')


Special uses of this syntax in PHP? (Triple 'Angle Brackets')

给定以下代码:

$myString = <<<script
   .
   .
   .
 script;

感谢对这个问题的原始版本的回答,我理解了<<<作为heredoc语法,作为双引号处理而不需要转义引号。>

更进一步,如何最好地利用这一点?具体来说,这是否应该减轻处理包含代码语法的混合引号字符串的压力?

i, e . .

attribute="name-like string" attribute="property: 'value("value")';"

的想法是,这可能是有用的(如果实现的方式我现在猜测),特别是在处理更大的复杂性和/或寻找代码注入。同样,寻找heredoc for特别有用或可利用的任何场景。

这是Heredoc语法:http://php.net/manual/en/language.types.string.php#language.types.string.syntax.heredoc

它最大的优点是不必担心转义引号,因为字符串不是用引号分隔的。

这叫做heredoc语法:

第三种划分字符串的方法是heredoc语法:<<<。在这个操作符之后,提供一个标识符,然后是换行符。后面是字符串本身,然后是相同的标识符,以关闭引号。

它作为一个双引号字符串,更好地使用双引号,更容易理解,更容易维护在我的眼睛!