「php化整为零系列」七、Heredoc&Nowdoc


源码地址:https://github.com/wilfordw/phpTutorial

Heredoc和Nowdoc用于在php代码中嵌入大段字符,同时特殊字符不需要转义

语法:

Heredoc:

//标示可以是自定义字符,前后字符一致,且不能在文章中出现 Heredoc中可以嵌入变量
<<<标示
文章
标示;

Nowdoc;

//标示可以是自定义字符,前后字符一致,且不能在文章中出现 Nowdoc中不能嵌入变量
<<<'标示'
文章
标示;

Example

<?php
$name = "MyName";

//Heredoc 语法<<<标记...标记,可以插入变量 标记后不能有空格
echo <<<TEST1
My name is "{$name}"
TEST1;
//My name is "MyName"


//作为方法参数
echo var_dump(<<<EOD
Hello World
EOD
);
//string(11) "Hello World" 

//常量变量赋值
class A
{
    const xx = <<< EOD
constXX
EOD;

    public $oo = <<< EOD
var_oo
EOD;
}

$a = new A;
echo $a::xx;//constXX
echo $a->oo;//var_oo

//Nowdoc 语法<<<'标记'...标记,可以插入变量 标记后不能有空格
echo <<< 'TEST2'
My name is "{$name}".
TEST2;
//My name is "{$name}".

?>

总结一些容易出错的问题:

  1. <<<开始标记 后面不能有空格
  2. 结束标记必须定格,以分号结束
  3. php代码必须有?>结尾,对于纯php代码,没有文本输出的php代码官方建议不要用?>结尾php代码,但这里必须要,要不会报错
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,156评论 19 139
  • 一、php可以做什么 php是一种可以在服务器端运行的编程语言,可以运行在Web服务器端。 php是一门后台编程语...
    空谷悠阅读 3,166评论 4 97
  • PHP支持8种基本的数据类型 四种标量类型:+boolean(布尔型)+nteger(整型)+float(浮点型,...
    a0d560da7818阅读 485评论 0 1
  • php.ini设置,上传大文件: post_max_size = 128Mupload_max_filesize ...
    bycall阅读 6,897评论 3 64
  • 为积极贯彻落实全民健身国家战略,弘扬武术文化、传承武圣精神,进一步促进全民健身运动,推动体育事业发展,首届“关圣国...
    afb8eb384642阅读 465评论 0 1