PHP EOT定界符的使用详解


Posted in PHP onSeptember 30, 2008

结束标识符必须从行的第一列开始。同样,标识符也必须遵循 PHP 中其它任何标签的命名规则:只能包含字母数字下划线,而且必须以下划线或非数字字符开始。
警告
很重要的一点必须指出,结束标识符所在的行不能包含任何其它字符,可能除了一个分号(;)之外。这尤其意味着该标识符不能被缩进,而且在分号之前和之后都不能有任何空格或制表符。同样重要的是要意识到在结束标识符之前的第一个字符必须是你的操作系统中定义的换行符。例如在 Macintosh 系统中是 \r。
如果破坏了这条规则使得结束标识符不“干净”,则它不会被视为结束标识符,PHP 将继续寻找下去。如果在这种情况下找不到合适的结束标识符,将会导致一个在脚本最后一行出现的语法错误。
不能用定界符语法初始化类成员。用其它字符串语法替代。 例子 11-3. 非法的例子

<?
class foo {
public $bar = <<bar
EOT;
}
?>


定界符文本表现的就和双引号字符串一样,只是没有双引号。这意味着在定界符文本中不需要转义引号,不过仍然可以用以上列出来的转义代码。变量会被展开,但当在定界符文本中表达复杂变量时和字符串一样同样也要注意。 例子 11-4. 定界符字符串例子

<?
$str = <<Example of string
spanning multiple lines
using heredoc syntax.
EOT;

/* More complex example, with variables. */
class foo
{
var $foo;
var $bar;
function foo()
{
$this-&gt;foo = 'Foo';
$this-&gt;bar = array('Bar1', 'Bar2', 'Bar3');
}
}
$foo = new foo();
$name = 'MyName';
echo &lt;&lt;My name is "$name". I am printing some $foo-&gt;foo.
Now, I am printing some {$foo-&gt;bar[1]}.
This should print a capital 'A': \x41
EOT;
?>

#注: 定界符支持是 PHP 4 中加入的。
#如何在php中输出html代码(EOT)

<?php
echo <<< EOT
<table>
	<tbody>
		<tr>
			<td>ClassID</td>
			<td>stuno</td>
			<td>学生姓名</td>
			<td>家长姓名</td>
			<td>家长手机号</td>
		</tr>
	</tbody>
</table>
EOT;
?>

PHP 相关文章推荐
PHP print类函数使用总结
Jun 25 PHP
PHP备份/还原MySQL数据库的代码
Jan 06 PHP
PHP文件上传原理简单分析
May 29 PHP
网页上facebook分享功能具体实现
Jan 26 PHP
PHP开发框架kohana3 自定义路由设置示例
Jul 14 PHP
PHP5.2下preg_replace函数的问题
May 08 PHP
php读取txt文件并将数据插入到数据库
Feb 23 PHP
微信支付开发发货通知实例
Jul 12 PHP
Yii2框架dropDownList下拉菜单用法实例分析
Jul 18 PHP
PHP 以POST方式提交XML、获取XML,解析XML详解及实例
Oct 26 PHP
PHP面向对象程序设计OOP继承用法入门示例
Dec 27 PHP
php使用redis的有序集合zset实现延迟队列应用示例
Feb 20 PHP
40个迹象表明你还是PHP菜鸟
Sep 29 #PHP
PHP网站基础优化方法小结
Sep 29 #PHP
10条PHP编程习惯助你找工作
Sep 29 #PHP
PHP生成带有雪花背景的验证码
Sep 28 #PHP
PHP编实现程动态图像的创建代码
Sep 28 #PHP
php 三维饼图的实现代码
Sep 28 #PHP
PHP控制网页过期时间的代码
Sep 28 #PHP
You might like
《斗罗大陆》六翼天使武魂最强,为什么老千家不是上三宗?
2020/03/02 国漫
咖啡磨器 如何选购一台适合家用的意式磨豆机
2021/03/05 新手入门
php实现递归与无限分类的方法
2015/02/16 PHP
详解PHP多个进程配合redis的有序集合实现大文件去重
2019/03/06 PHP
基于laravel缓冲cache的用法详解
2019/10/23 PHP
谈谈关于JavaScript 中的 MVC 模式
2013/04/11 Javascript
JavaScript判断浏览器类型的方法
2015/02/10 Javascript
Node.js 条形码识别程序构建思路详解
2016/02/14 Javascript
完美JQuery图片切换效果的简单实现
2016/07/21 Javascript
javascript将中国数字格式转换成欧式数字格式的简单实例
2016/08/02 Javascript
JAVA Web实时消息后台服务器推送技术---GoEasy
2016/11/04 Javascript
JS实现异步上传压缩图片
2017/04/22 Javascript
React.js中常用的ES6写法总结(推荐)
2017/05/09 Javascript
AngularJS基于factory创建自定义服务的方法详解
2017/05/25 Javascript
bootstrap fileinput实现文件上传功能
2017/08/23 Javascript
jQuery实现IE输入框完成placeholder标签功能的方法
2017/09/20 jQuery
javascript input输入框模糊提示功能的实现
2017/09/25 Javascript
vue 路由页面之间实现用手指进行滑动的方法
2018/02/23 Javascript
JS/HTML5游戏常用算法之碰撞检测 包围盒检测算法详解【矩形情况】
2018/12/13 Javascript
jQuery实现为table表格动态添加或删除tr功能示例
2019/02/19 jQuery
vue实现codemirror代码编辑器中的SQL代码格式化功能
2019/08/27 Javascript
python中Genarator函数用法分析
2015/04/08 Python
Python实现堆排序的方法详解
2016/05/03 Python
Python打包可执行文件的方法详解
2016/09/19 Python
Python 闭包的使用方法
2017/09/07 Python
python双向链表原理与实现方法详解
2019/12/03 Python
Python交互环境下打印和输入函数的实例内容
2020/02/16 Python
python图片验证码识别最新模块muggle_ocr的示例代码
2020/07/03 Python
HTML5里的placeholder属性使用实例和美化显示效果的方法
2014/04/23 HTML / CSS
馥绿德雅美国官方网站:Rene Furterer头皮护理专家
2019/05/01 全球购物
PHP两种查询函数array/row的区别
2013/06/03 面试题
小学教师管理制度
2014/01/18 职场文书
主管会计岗位职责
2014/03/13 职场文书
食品安全主题班会
2015/08/13 职场文书
高一语文教学反思
2016/02/16 职场文书
浅谈redis缓存在项目中的使用
2021/05/20 Redis