PHP中nowdoc和heredoc使用需要注意的一点


Posted in PHP onMarch 21, 2014

最后发现了问题所在,原来这类文档在结束时,一定要靠近行的第一位,就是说EOF前面不能有空格,而为了代码缩进,正好产生了这样的问题.

$str = <<<'EOD'
Example of string
spanning multiple lines
using nowdoc syntax.
EOD;//EOD一定要靠近前面,不能有空格,同时不要漏掉结束符分号;

附: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”的效率问题而实现的“高效率”的静态版本

PHP 相关文章推荐
PHP中动态显示签名和ip原理
Mar 28 PHP
php Mysql日期和时间函数集合
Nov 16 PHP
用PHP获取Google AJAX Search API 数据的代码
Mar 12 PHP
析构函数与php的垃圾回收机制详解
Oct 28 PHP
php通过ajax实现双击table修改内容
Apr 28 PHP
如何使用PHP对网站验证码进行破解
Sep 17 PHP
ThinkPHP数据操作方法总结
Sep 28 PHP
thinkphp框架下404页面设置 仅三步
May 14 PHP
PHP MySql增删改查的简单实例
Jun 21 PHP
thinkPHP5.0框架环境变量配置方法
Mar 17 PHP
php+mysql+ajax实现单表多字段多关键词查询的方法
Apr 15 PHP
PHP中非常有用却鲜有人知的函数集锦
Aug 17 PHP
php获取表单中多个同名input元素的值
Mar 20 #PHP
php中的静态变量的基本用法
Mar 20 #PHP
php遍历文件夹下的所有文件和子文件夹示例
Mar 20 #PHP
php数据库备份还原类分享
Mar 20 #PHP
PHP实现微信公众平台音乐点播
Mar 20 #PHP
一个PHP针对数字的加密解密类
Mar 20 #PHP
php的array数组和使用实例简明教程(容易理解)
Mar 20 #PHP
You might like
一个PHP+MSSQL分页的例子
2006/10/09 PHP
信用卡效验程序
2006/10/09 PHP
PHP编程中字符串处理的5个技巧小结
2007/11/13 PHP
PHP中使用foreach和引用导致程序BUG的问题介绍
2012/09/05 PHP
php爬取天猫和淘宝商品数据
2018/02/23 PHP
PHP简单实现防止SQL注入的方法
2018/03/13 PHP
在线编辑器的实现原理(兼容IE和FireFox)
2007/03/09 Javascript
不用MOUSEMOVE也能滑动啊
2007/05/23 Javascript
使用jquery为table动态添加行的实现代码
2011/03/30 Javascript
jquery得到font-size属性值实现代码
2013/09/30 Javascript
深入学习jQuery Validate表单验证(二)
2016/01/18 Javascript
Web程序员必备的7个JavaScript函数
2016/06/14 Javascript
javascript动画之模拟拖拽效果篇
2016/09/26 Javascript
jQuery中$.ajax()方法参数解析
2016/10/22 Javascript
解析js如何获取css样式
2016/12/11 Javascript
jquery的 filter()方法使用教程
2018/03/22 jQuery
微信小程序+腾讯地图开发实现路径规划绘制
2019/05/22 Javascript
Python脚本处理空格的方法
2016/08/08 Python
python3.5 + PyQt5 +Eric6 实现的一个计算器代码
2017/03/11 Python
python批量替换多文件字符串问题详解
2018/04/22 Python
利用python提取wav文件的mfcc方法
2019/01/09 Python
python实现LRU热点缓存及原理
2019/10/29 Python
Python with语句和过程抽取思想
2019/12/23 Python
使用css3和jquery实现可伸缩搜索框
2014/02/12 HTML / CSS
美国正版电视节目和电影在线观看:Hulu
2018/05/24 全球购物
在C#中如何实现多态
2014/07/02 面试题
结婚喜宴家长答谢词
2014/01/15 职场文书
自考生自我评价分享
2014/01/18 职场文书
个人实习生的自我评价
2014/02/16 职场文书
小学模范班主任事迹材料
2014/05/13 职场文书
小学生美德少年事迹材料
2014/08/24 职场文书
大一工商管理职业生涯规划:有梦最美,行动相随
2014/09/18 职场文书
退学证明范本3篇
2014/10/29 职场文书
幼儿园老师工作总结2015
2015/05/22 职场文书
毕业欢送会致辞
2015/07/29 职场文书
个人工作失误的保证书怎么写?
2019/06/21 职场文书