PHP是一个Web编程语言,在编程过程中难免会遇到用echo来输出大段的html和javascript脚本的情况,如果用传统的输出方法――按字符串输出的话,肯定要有大量的转义符来对字符串中的引号等特殊字符进行转义,以免出现语法错误。如果是一两处还可以容忍,但是要是一个完整的html文本或者是一个200行的js我想是谁都会崩溃的。这就是PHP为什么要引入一个定界符的原因――至少一大部分原因是这样的。
PHP中的定界符格式是这样的:
<<<Eof
……
Eof;
看起来很简单,但是其中有许多地方需要注意。
使用定界符<<< 的注意事项
定界符标识必须前后一致
可以任意定义定界符标识,比如 echo html div ,尽量选用有意义的标识符,并遵循某类命名规范。
开头标识后不能跟任何字符,空格也不可以,换行后再跟要输出的文本。
结束标识(其后紧跟一个分号;)前后都不可有任何字符,即结束标识要顶头写,且独占一行,其后除紧跟分号外,不能有任何字符(空格也不可以)
最后要注意的是,结束标识所在行不能成为脚本的最后一行,其下必须有空行或者其他代码行,否则报错。
实例如下:
<?php //格式一 $a=<<<HTML <table> <tr>123<td></td><td></td><td></td></tr> </table> HTML; echo $a; //格式二 echo <<<EOT <table width=80% border="2" cellpadding="3" cellspacing="0" bordercolor="#808080"> <tr bgcolor="#84A9E1"> <td align="center">ClassID</td> <td align="center">stuno</td> <td align="center">学生姓名</td> <td align="center">家长姓名</td> <td align="center">家长手机号</td> </tr> EOT; echo '999999';//此行是为了满足注意事项的最后一条额外添加的语句