13

我是 PHP 新手,不明白这是什么意思<<<_END。有人可以解释一下什么时候应该使用它吗?我查看了各种示例,它们似乎都嵌入了 HTML。但是我可以使用没有<<<_END标签的 HTML,那我为什么要使用它们呢?我尝试搜索手册,但我一直在寻找end()数组的方法。

4

5 回答 5

17

这是heredoc的开始。你可以做:

$data = <<< _END

You can write anything you want in between the start and end

_END;

_END可以是任何东西。你可以放EOFSTUFF。只要您在开始和结束时使用相同的东西。

于 2011-01-13T01:07:55.417 回答
3

这表示当您遇到_END

如果目标是将其分配给变量或将其传递给函数而不是立即将其打印到 Web 服务器,则在其中之一中定义 HTML 会很有用。

于 2011-01-13T01:09:07.203 回答
2

该语法称为heredoc

<<<_END
some text
_END

基本上,这是一种无需担心转义引号等问题的字符串编写方式。

正如您所提到的,与其他字符串格式相比,它并没有真正提供很多好处——尽管,它确实意味着您可以编写一个 HTML 块而无需使用 ?>

它也不太受欢迎,因为它的使用通常与通过将内容嵌入脚本中间来将内容与逻辑分开的做法背道而驰。

于 2011-01-13T01:12:42.310 回答
1

这有帮助吗?http://www.php.net/manual/en/language.types.string.php#language.types.string.syntax.heredoc

它允许您回显一段文本(与 with 相同echo "words";),但无需使用开始/结束引号,也无需转义包含的双引号。阅读上面的手动链接以获取更多详细信息。

于 2011-01-13T01:09:22.747 回答
1

这是一个heredoc。这只是定义字符串的一种方式。

于 2011-01-13T01:09:48.717 回答