PHP 表达式 <<
我使用 PHP 进行开发已经有几年了,最近遇到了这段代码:
<?php
echo <<<EOB
<html>
<head>
<title>My title</title>
</head>
...
EOB;
?>
我从未见过这种打印 HTML 的方法,这似乎非常有用,并且不太容易出现一些奇怪的变量或双引号语法错误。
我搜索了一些关于此的官方信息,只找到了 Rasmus 的一篇帖子谈论这个。
关于此功能的详细解释是什么?EOB 是什么意思? 也许块结束?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web
技术交流群。
我使用 PHP 进行开发已经有几年了,最近遇到了这段代码:
<?php
echo <<<EOB
<html>
<head>
<title>My title</title>
</head>
...
EOB;
?>
我从未见过这种打印 HTML 的方法,这似乎非常有用,并且不太容易出现一些奇怪的变量或双引号语法错误。
我搜索了一些关于此的官方信息,只找到了 Rasmus 的一篇帖子谈论这个。
关于此功能的详细解释是什么?EOB 是什么意思? 也许块结束?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
这称为 heredoc 语法。 该文档将告诉您需要了解的一切。
然而,本质上:
所以
EOB
正是作者选择的分隔符,不太确定它在他的情况下代表什么,但标识符可以是你想要的任何内容。This is known as heredoc syntax. The documentation will tell you everything you need to know.
Essentially, however:
So
EOB
is just what the author chose as his delimiter, not really sure what it stands for in his case but the identifier can be whatever you want.只是为了完整起见,PHP 中的 Heredoc 继承自 Perl,而 Perl 本身又继承自Bourne shell。
Just for the sake of completeness, Heredoc in PHP is inherited from Perl, which itself inherited it from the Bourne shell.
它称为heredoc,并在
It´s called heredoc and is described in the manual.
我认为官方术语是“here document”,通常缩写为“heredoc”。
The official term is 'here document' I believe, usually shortened to 'heredoc'.
这称为
heredoc
语法。 它可以让您将大块文本视为字符串。 它也允许换行。 变量可以插入到文本块中,就像使用字符串的双引号一样。更有用的解释可以在 PHP 自己的网站上找到: http://php.net /manual/en/language.types.string.php
This is called
heredoc
syntax. It lets you treat large blocks of text like a string. It allows for newlines as well. Variables can be inserted into the block of text, just like using the double quotation marks for strings.A more useful explanation can be found on PHP's own website: http://php.net/manual/en/language.types.string.php