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 相关文章推荐
几种显示数据的方法的比较
Oct 09 PHP
zen cart新进商品的随机排序修改方法
Sep 10 PHP
解析php框架codeigniter中如何使用框架的session
Jun 24 PHP
WordPress中用于获取及自定义头像图片的PHP脚本详解
Dec 17 PHP
PHP定时执行任务的3种方法详解
Dec 21 PHP
PHP5.3新特性小结
Feb 14 PHP
PHP调用存储过程返回值不一致问题的解决方法分析
Apr 26 PHP
PHP内置加密函数详解
Nov 20 PHP
PHP文件系统管理(实例讲解)
Sep 19 PHP
PHP实现将多个文件压缩成zip格式并下载到本地的方法示例
May 23 PHP
PHP PDOStatement::fetchColumn讲解
Jan 31 PHP
laravel框架实现敏感词汇过滤功能示例
Feb 15 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
php基础教程 php内置函数实例教程
2012/08/21 PHP
Thinkphp模板中截取字符串函数简介
2014/06/17 PHP
php输出金字塔的2种实现方法
2014/12/16 PHP
PHP单文件上传原理及上传函数的封装操作示例
2019/09/02 PHP
php写入mysql中文乱码的实例解决方法
2019/09/17 PHP
laravel框架 api自定义全局异常处理方法
2019/10/11 PHP
PHP实现简易用户登录系统
2020/07/10 PHP
基于jQuery的输入框无值自动显示指定数据的实现代码
2011/01/24 Javascript
js判断是否为ie的方法小结
2014/01/13 Javascript
鼠标拖拽移动子窗体的JS实现
2014/02/25 Javascript
js实现动画特效的文字链接鼠标悬停提示的方法
2015/03/02 Javascript
深入理解JS正则表达式---分组
2016/07/18 Javascript
JS获取当前使用的浏览器名字以及版本号实现方法
2016/08/19 Javascript
JS中SetTimeout和SetInterval使用初探
2017/03/23 Javascript
Vue.js实战之组件的进阶
2017/04/04 Javascript
详解用node编写自己的cli工具
2017/05/23 Javascript
angular学习之从零搭建一个angular4.0项目
2017/07/10 Javascript
vue 的 solt 子组件过滤过程解析
2019/09/07 Javascript
p5.js实现简单货车运动动画
2019/10/23 Javascript
javascript实现扫雷简易版
2020/08/18 Javascript
js实现简单商品筛选功能
2021/02/02 Javascript
Python socket.error: [Errno 98] Address already in use的原因和解决方法
2014/08/25 Python
python3.8 微信发送服务器监控报警消息代码实现
2019/11/05 Python
Django choices下拉列表绑定实例
2020/03/13 Python
I.T中国官网:精选时尚设计师单品网购平台
2018/03/26 全球购物
应届毕业生的个人自我鉴定
2013/10/24 职场文书
会计电算化个人求职信范文
2014/01/24 职场文书
后备干部考察材料
2014/02/12 职场文书
法制宣传实施方案
2014/03/13 职场文书
自考毕业自我鉴定
2014/03/18 职场文书
个人股份转让协议书范本
2015/01/28 职场文书
2015年服务员个人工作总结
2015/05/27 职场文书
党支部考察意见范文
2015/06/02 职场文书
应用最多的公文《通知》如何写?
2019/04/02 职场文书
golang在GRPC中设置client的超时时间
2021/04/27 Golang
python可视化之颜色映射详解
2021/09/15 Python