PHP heredoc 用法

来源:互联网 发布:linux服务器安全攻防 编辑:程序博客网 时间:2024/04/29 19:02

PHP heredoc 用法

     php 中的 heredoc技术是php用来引用字符串的一种方式。在phpwind中巧妙的运用了这个技术,实现了逻辑代码和界面设计的分离。

语法:  

1. 使用操作符  “<<<”

2. 操作符后紧跟标识符(开始标识符),之后重起新的一行 输入要引用的字符串,可以包含变量。

3. 新的一行,顶格写结束表示符,以分号结束。

要注意到几点:

 

1.标识符可以自定义 一般的 有EOT ,EOD  EOF 等, 只有保持开始表示符和结束表示符一样即可。

2.结束表示符必须独占一行,且必须顶格写,最后以 ‘;’ 分号结尾。

3.所有引用的字符串中可以包含变量,无需字符串连接符。

<?php
$str = <<<ET
heredoc test!!!
 
ET;
echo $str;
?>

  输出结果 

heredoc test!!!
附:heredoc和nowdoc的区别

heredoc使用 <<< EOT 的标示符,而nowdoc使用 <<< 'EOT' 这样的标示符,其中nowdoc是PHP5.3引进的新技术,它包含了heredoc的语法,只是其中的内容绝对不会进行任何的转义和解释,是什么内容就是什么内容,不会解析PHP相关的内容
heredoc中的PHP变量建议使用{$name->change()} 大括号括起来,这样可以避免一定的歧义,如果要原样输出可以使用传说中的转义字符 \ ,转义字符本身可以使用转义字符进行输出,即 \ 这种表示方法,大括号之类的这些都需要转义输出。
为了保证的确可用,建议使用 heredoc 的语法,本身也带有转义,因为PHP5.3才引进的nowdoc语法,很多云托管坏境很有可能不支持导致歇菜。
最后强调下,heredoc是从PHP4.0开始引进的,而nowdoc语法则需要5.3版本,因为heredoc包含了nowdoc的功能,所以个人建议还是使用heredoc比较好些。

简单来说:
1、heredoc是动态的 nowdoc是静态的
2、heredoc类似多行的双引号 newdoc类似多行的单引号
3、heredoc是一种专门处理大段字符串的通用处理方案,而nowdoc是php为了弥补动态实现“heredoc”的效率问题而实现的“高效率”的静态版本


0 0
原创粉丝点击