首页 >后端开发 >PHP问题 >heredoc是什么?它能为PHP做什么?

heredoc是什么?它能为PHP做什么?

醉折花枝作酒筹
醉折花枝作酒筹原创
2021-08-02 10:17:482501浏览

为了让大家彻底理解php中的EOF,这次我们开始一个新的章节,有需要的小伙伴可以来看看。

在php中,存在一种定义字符串的方法,这就是heredoc;它可以在在命令行shell(如sh、csh、ksh、bash、PowerShell和zsh)和程序语言(像Perl、PHP、Python和Ruby)之中去定义。

首先我们来看一个小小的栗子。

<?php
$name="runoob";
$a= <<<EOF
        "abc"$name
        "123"
EOF;
// 结束需要独立一行且前后不能空格
echo $a;
?>

我们看这段代码,好像“$a=”后面的代码十分奇特啊,居然使用了“<<<”,而且它还有两个一样的EOF单词,这是什么呢?这又有什么意思呢?

在PHP中,如果我们想在命令行shell里或是在程序语言定义字符串,我们有一个特定的格式,就是.以<<<EOF开始标记开始,以EOF结束标记结束。

我们了解了heredoc,那我们去看看使用heredoc的方法吧。

1. 必须在EOF结束标记后接分号,否则编译通不过。

2. 只要保证结束标识与开始标识一致,开始标记和结束标记可以用任意其它字符代替。

3. 结束标记必须占据顶部网格中的一行(它必须从行首开始,后面不能有任何空格和字符)。

4.开始标识符可以没有引号,也可以有单引号和双引号。不带引号的效果与带双引号的效果相同。解释嵌入变量和转义符号。对于单引号,嵌入变量和转义符号不会被解释。

5.当内容需要嵌入引号(单引号或双引号)时,不需要添加转义符。内容本身避开了单引号和双引号,这等同于Q和QQ的用法。

知道了那么多使用heredoc的方法之后,我们去看看注意事项吧,避免我们写出来的代码无法使用啊,或是出现其他的问题。

1.以<<<EOF开始标签开始,以EOF结束标签结束。结束标记必须写在开头,没有缩进和空格,并且结束标记的结尾必须有分号。

2.开始标记与结束标记相同,例如大写的EOT、EOD和EOF,但不限于那些(JSON、HTML等),只要开始标记和结束标记不出现在正文中。

3.开始标签和结束标签之间的变量可以正常解析,但函数不能。在heredoc中,变量不需要用连接符.,来将它们连接到一起,就想我们上面例子里的“"abc"$name”一样。

就说到这里了,有其他想知道的,可以点击这个哦。→ →php视频教程

以上是heredoc是什么?它能为PHP做什么?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn