什么是<<<_END?
我是 PHP 新手,不明白 <<<_END
的意义是什么。有人可以解释一下什么时候应该使用这个吗?我查看了各种示例,它们似乎都嵌入了 HTML。但我可以使用不带 <<<_END
标记的 HTML,那么我为什么要使用它们呢?我尝试搜索手册,但我一直在寻找数组的 end()
方法。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
这是 heredoc< 的开始/a>.您可以执行以下操作:
_END
可以是任何内容。您可以输入EOF
或STUFF
。只要您在开始和结束时使用相同的东西即可。It's the start of a heredoc. you can do:
_END
can be just about anything. You could putEOF
orSTUFF
. as long as you use the same thing at the start and the finish.这表示 heredoc 的开始 (一个多行字符串,允许您在中间使用引号,未转义),当您遇到
_END
时结束如果以下情况,在其中之一中定义 HTML 可能会很有用:目标是将其分配给变量或将其传递给函数,而不是立即将其打印到 Web 服务器。
This signifies the beginning of a heredoc (a multi-line string that allows you to use quotation marks in the middle, unescaped) that ends when you encounter the
_END
It can be useful to define HTML in one of these if the goal is to assign it to a variable or pass it to a function rather than printing it to the web server immediately.
该语法称为 heredoc< /a>
基本上,这是一种编写字符串的方法,无需担心转义引号等问题。
正如您所提到的,与其他字符串格式相比,它并没有真正提供很多好处 - 尽管它确实意味着您可以编写 HTML 块,而无需使用 ?> 逃离 PHP。
它也不太受欢迎,因为它的使用通常违背了通过将内容嵌入到脚本中间来将内容与逻辑分离的做法。
That syntax is called heredoc
Basically, it's a way of writing a string without worrying about escaping quotes and so on.
As you've mentioned, it doesn't really provide a lot of benefit over other string formats - although, it does mean you can write a block of HTML without escaping out of PHP with ?> <?php
It also isn't too popular as its use generally goes against the practice of seperating content from logic by embedding the content in the middle of your script.
这有帮助吗? http://www.php .net/manual/en/language.types.string.php#language.types.string.syntax.heredoc
它允许您回显一段文本(与
echo "words 相同";
),但不使用开始/结束引号,并且不必转义包含的双引号。阅读上面的手册链接了解更多详细信息。Does this help? http://www.php.net/manual/en/language.types.string.php#language.types.string.syntax.heredoc
It allows you to echo out a block of text (just the same as with
echo "words";
), but without using the beginning/ending quotes, and without having to escape contained double quotes. Read the manual link above for more detail.这是一个 heredoc 。这只是定义字符串的一种方法。
It's a heredoc. It's just a way of defining a string.