猿问

PHP表达式<<< EOB

我已经使用PHP开发了几年了,最近遇到了以下代码:


<?php

    echo <<<EOB

        <html>

        <head>

            <title>My title</title>

        </head>

        ...

    EOB;

?>

我从未见过这种打印HTML的方法,它似乎非常有用,并且不太容易出现一些奇怪的变量或双引号语法错误。


我已经搜索了一些有关此的官方信息,但只找到了拉斯穆斯(Rasmus)谈论此事的帖子。


关于此功能的详细解释是什么?EOB是什么意思?也许块的尽头?


MMMHUHU
浏览 556回答 3
3回答

德玛西亚99

这称为heredoc语法。该文档将告诉您所有您需要了解的内容。但是,本质上是:分隔字符串的第三种方法是heredoc语法:<<<。在此运算符之后,提供了一个标识符,然后提供了换行符。字符串本身紧随其后,然后再次使用相同的标识符关闭引号。结束标识符必须在该行的第一列中开始。另外,标识符必须遵循与PHP中其他任何标签相同的命名规则:它必须仅包含字母数字字符和下划线,并且必须以非数字字符或下划线开头。所以,EOB正是笔者选择了他的分隔符,真的不知道它代表什么在他的案件,但标识符可以是任何你想要的。

HUH函数

为了完整起见,PHP中的Heredoc继承自Perl,而Perl本身则继承自Bourne shell。
随时随地看视频慕课网APP
我要回答