PHP EOT定界符的使用详解

结束标识符必须从行的第一列开始。同样,标识符也必须遵循 PHP 中其它任何标签的命名规则:只能包含字母数字下划线,而且必须以下划线或非数字字符开始。
警告
很重要的一点必须指出,结束标识符所在的行不能包含任何其它字符,可能除了一个分号(;)之外。这尤其意味着该标识符不能被缩进,而且在分号之前和之后都不能有任何空格或制表符。同样重要的是要意识到在结束标识符之前的第一个字符必须是你的操作系统中定义的换行符。例如在 Macintosh 系统中是 \r。
如果破坏了这条规则使得结束标识符不“干净”,则它不会被视为结束标识符,PHP 将继续寻找下去。如果在这种情况下找不到合适的结束标识符,将会导致一个在脚本最后一行出现的语法错误。
不能用定界符语法初始化类成员。用其它字符串语法替代。 例子 11-3. 非法的例子
PHP代码
<?php
class foo {
public $bar = <<<EOT
bar
EOT;
}
?>
定界符文本表现的就和双引号字符串一样,只是没有双引号。这意味着在定界符文本中不需要转义引号,不过仍然可以用以上列出来的转义代码。变量会被展开,但当在定界符文本中表达复杂变量时和字符串一样同样也要注意。 例子 11-4. 定界符字符串例子
PHP代码
<?php
$str = <<<EOT
Example of string
spanning multiple lines
using heredoc syntax.
EOT;
/* More complex example, with variables. */
class foo
{
var $foo;
var $bar;
function foo()
{
$this->foo = 'Foo';
$this->bar = array('Bar1', 'Bar2', 'Bar3');
}
}
$foo = new foo();
$name = 'MyName';
echo <<<EOT
My name is "$name". I am printing some $foo->foo.
Now, I am printing some {$foo->bar[1]}.
This should print a capital 'A': \x41
EOT;
?>
注: 定界符支持是 PHP 4 中加入的。
如何在php中输出html代码(EOT)
PHP代码
<?php
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;
?>

(0)

相关推荐

  • php 定界符格式引起的错误

    错误代码:Parse error: syntax error, unexpected $end in H:\wamp\www\testing\test\2.1.4.php on line 16 错误源代码: 复制代码 代码如下: <?php $str = <<<EOD <br><font size='2'>测试字符串</font> <br><font size='3'>测试字符串</font> <br&g

  • php定界符<<<使用技巧和实例

    php界定符就是为了照样输出内容.它的格式如下: 复制代码 代码如下: $str = <<< EOF     Here is your string     ...... EOF; 其中EOF是自定义的变量,但要成对出现! 附上一段php示例代码: 复制代码 代码如下: <?php $a = "www.jb51.net"; print <<< jb51 <select>  <option value="1"

  • PHP 定界符 使用技巧

    如果用传统的输出方法--按字符串输出的话,肯定要有大量的转义符来对字符串中的引号等特殊字符进行转义,以免出现语法错误.如果是一两处还可以容忍,但是要是一个完整的html文本或者是一个200行的js我想是谁都会崩溃的.这就是PHP为什么要引入一个定界符的原因--至少一大部分原因是这样的. 1.PHP定界符的作用就是按照原样,包括换行格式什么的,输出在其内部的东西: 2.在PHP定界符中的任何特殊字符都不需要转义: 3.PHP定界符中的PHP变量会被正常的用其值来替换. PHP中的定界符格式是这样的

  • PHP正则表达式之定界符和原子介绍

    本节内容我们将介绍PHP中正则 表达式的基础语法:定界符和原子.内容包含了定界符的定义以及原子的定义和构成等等.其中原子的构成十分灵活,以便满足我们对处理字符串的需求.在这之 前,我们需要先了解一个正则表达式处理函数preg_match()来进行测试,以方便我们教程示例的进行. 先来看一下正则表达式的定界符.正则表达式的构成以及preg_match()函数: 1,正则表达式的定界符. 除了字母.数字和反斜线\以外的任何字符都可以为定界符号,比如 | |.//.{}.!!等等,但是需要注意,如果没

  • php四种定界符详解

    闲来无事,研究了与java.c#完全不同的领域php,php即(外文名:PHP: Hypertext Preprocessor,中文名:"超文本预处理器"),对于学习php的初学者,不得不掌握apache的部署,apache的部署,后面会讲到,当然对php.apache.mysql现在也有比较多一键式部署工具,例如WAMP(windows.apache.mysql.php):资源网上比较多,这里就不讲相关的资源链接发出来了,为避免出现获取积分的嫌疑:言归正传,下面就讲讲php的基础知识

  • PHP EOT定界符的使用详解

    结束标识符必须从行的第一列开始.同样,标识符也必须遵循 PHP 中其它任何标签的命名规则:只能包含字母数字下划线,而且必须以下划线或非数字字符开始. 警告 很重要的一点必须指出,结束标识符所在的行不能包含任何其它字符,可能除了一个分号(;)之外.这尤其意味着该标识符不能被缩进,而且在分号之前和之后都不能有任何空格或制表符.同样重要的是要意识到在结束标识符之前的第一个字符必须是你的操作系统中定义的换行符.例如在 Macintosh 系统中是 \r. 如果破坏了这条规则使得结束标识符不"干净&quo

  • 详解Java的TCP/IP编程学习--基于定界符的成帧

    一.定界符成帧 Framer接口 package framer; import java.io.IOException; import java.io.OutputStream; public interface Framer { /** * 添加成帧信息并将指定消息输出到指定流 * @param message * @param out * @throws IOException */ void frameMsg(byte[] message, OutputStream out) throws

  • PHP定义字符串的四种方式详解

    1.简介 在PHP中这门语言中,因为是弱类型语言,因此使用变量时不需提前定义即可使用. 我们在使用php进行开发的时候,大多数使用双引号.单引号进行定义字符串.既然有这两种方式,那么他们之间肯定是有区别的. 并且,除了单双引号定义字符串这两种方式外,php还增加了heredoc和nowdoc这两种语法糖进行补充. 2.单引号与双引号 2.1.单引号 在单引号中,任何特殊字符都会按原样输出[除\\.\'将会被转义输出] eg. <?php $var = 'this is a var!'; echo

  • JS正则表达式详解[收藏]

    JS的正则表达式 //校验是否全由数字组成 function isDigit(s) { var patrn=/^[0-9]{1,20}$/; if (!patrn.exec(s)) return false return true } //校验登录名:只能输入5-20个以字母开头.可带数字."_"."."的字串 function isRegisterUserName(s) { var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,1

  • Linux中文本处理工具之cut命令详解

    前言 Cut 输入字符中指定的字段或指定的范围.若处理的是字段,则定界符隔开的即为各字段,而输出时字段也以给定的定界符隔开.默认的定界符为制表字符(TAB).下面来看看详细的介绍吧. 一.cut实战演练 cut.txt文件 root,x,0,0,root,/root,/bin/bash daemon,x,1,1,daemon,/usr/sbin,/usr/sbin/nologin bin,x,2,2,bin,/bin,/usr/sbin/nologin sys,x,3,3,sys,/dev,/u

  • MySQL触发器使用详解

    MySQL包含对触发器的支持.触发器是一种与表操作有关的数据库对象,当触发器所在表上出现指定事件时,将调用该对象,即表的操作事件触发表上的触发器的执行. 创建触发器 在MySQL中,创建触发器语法如下: 复制代码 代码如下: CREATE TRIGGER trigger_name trigger_time trigger_event ON tbl_name FOR EACH ROW trigger_stmt 其中: trigger_name:标识触发器名称,用户自行指定: trigger_tim

  • 一天一个shell命令 linux文本内容操作系列-sed命令详解

    说明: sed是stream editor(流编辑器)的缩写.它能够完美匹配正则表达式.sed和awk是文件编辑最重要的两个命令了.尤其涉及到了很多正则表达式的问题,笔者不敢也有点犯怵,试着写写. 实例: 1.替换文件中的字符串 $sed -i 's/text/replace/g' file #如果不加g结尾,则替换每一行的第一个 #如果只是打印,去掉-i 2.忽略前N处匹配,从N+1出开始替换 $sed -i 's/text/replace/2g' file #在g前面加入数字N 3.移除空白

  • Python 中开发pattern的string模板(template) 实例详解

    定制pattern的string模板(template) 详解 string.Template的pattern是一个正则表达式, 可以通过覆盖pattern属性, 定义新的正则表达式. 如: 使用新的定界符"{{", 把{{var}}作为变量语法. 代码: # -*- coding: utf-8 -*- ''''' Created on 2014.6.5 @author: Administrator @edition : python 3.3.0, eclipse pydev '''

  • Bootstrap框架的学习教程详解(二)

    Bootstrap,来自 Twitter,是目前最受欢迎的前端框架.Bootstrap 是基于 HTML.CSS.JAVASCRIPT 的,它简洁灵活,使得 Web 开发更加快捷. 一.下载Bootstrap Bootstrap (当前版本 v3.3.0)提供以下几种方式帮你快速上手,每一种方式针对具有不同技能等级的开发者和不同的使用场景. 下载地址:http://v3.bootcss.com/getting-started/#download PS:其实我们不用下载bootstrap也可以使用

  • 基于vue中css预加载使用sass的配置方式详解

    1.安装sass的依赖包 npm install --save-dev sass-loader //sass-loader依赖于node-sass npm install --save-dev node-sass 2.在build文件夹下的webpack.base.conf.js的rules里面添加配置,如下红色部分 { test: /\.sass$/, loaders: ['style', 'css', 'sass'] } <span style="color:#454545;"

随机推荐