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获取当前日期所在星期(月份)的开始日期与结束日期(实现代码)
Jun 18 PHP
将word转化为swf 如同百度文库般阅读实现思路及代码
Aug 09 PHP
PHP的switch判断语句的“高级”用法详解
Oct 01 PHP
CI框架装载器Loader.php源码分析
Nov 04 PHP
HTML中嵌入PHP的简单方法
Feb 16 PHP
深入解析PHP的Yii框架中的缓存功能
Mar 29 PHP
php无限级分类实现评论及回复功能
Feb 18 PHP
php 使用ActiveMQ发送消息,与处理消息操作示例
Feb 23 PHP
laravel框架使用FormRequest进行表单验证,验证异常返回JSON操作示例
Feb 18 PHP
Centos7安装swoole扩展操作示例
Mar 26 PHP
win10下 php安装seaslog扩展的详细步骤
Dec 04 PHP
PHP 对接美团大众点评团购券(门票)的开发步骤
Apr 03 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
1 Tube Radio
2021/03/02 无线电
example1.php
2006/10/09 PHP
PHP配置心得包含MYSQL5乱码解决
2006/11/20 PHP
php小偷相关截取函数备忘
2010/11/28 PHP
了解PHP的返回引用和局部静态变量
2015/06/04 PHP
php 指定范围内多个随机数代码实例
2016/07/18 PHP
php实现微信模拟登陆、获取用户列表及群发消息功能示例
2017/06/28 PHP
jQuery1.4.2与老版本json格式兼容的解决方法
2011/02/12 Javascript
jQuery数据显示插件整合实现代码
2011/10/24 Javascript
jQuery产品间断向下滚动效果核心代码
2014/05/08 Javascript
Eclipse配置Javascript开发环境图文教程
2015/01/29 Javascript
JavaScript和JQuery的鼠标mouse事件冒泡处理
2015/06/19 Javascript
javascript中判断json的方法总结
2015/08/27 Javascript
移动端H5开发 Turn.js实现很棒的翻书效果
2016/06/20 Javascript
JavaScript BASE64算法实现(完美解决中文乱码)
2017/01/10 Javascript
js生成随机数方法和实例
2017/01/17 Javascript
Vue过滤器的用法和自定义过滤器使用
2017/02/08 Javascript
详解angular element()方法使用
2017/04/08 Javascript
nodejs多版本管理总结
2018/04/03 NodeJs
vue element-ui之怎么封装一个自己的组件的详解
2019/05/20 Javascript
Vue基础学习之项目整合及优化
2019/06/02 Javascript
基于javascript的无缝滚动动画实现2
2020/08/07 Javascript
Python加密方法小结【md5,base64,sha1】
2017/07/13 Python
Python实现通过继承覆盖方法示例
2018/07/02 Python
为什么说Python可以实现所有的算法
2019/10/04 Python
解决python运行启动报错问题
2020/06/01 Python
python能自学吗
2020/06/18 Python
python中常见错误及解决方法
2020/06/21 Python
python删除指定列或多列单个或多个内容实例
2020/06/28 Python
详解Html5原生拖拽操作
2018/01/12 HTML / CSS
优秀老师事迹材料
2014/02/05 职场文书
教师求职信范文
2014/05/24 职场文书
竞选班干部演讲稿600字
2014/08/20 职场文书
财务管理制度范本
2015/08/04 职场文书
2016银行招聘自荐信
2016/01/28 职场文书
Python中的协程(Coroutine)操作模块(greenlet、gevent)
2022/05/30 Python