因为 PHP 是一个 Web 编程语言,在编程过程中难免会遇到使用 echo 来输出大段的 HTML 代码或者 Javascript 脚本的情况。如果用传统字符串输出的话,肯定要使用大量的转义字符来对字符串中的特殊字符进行转义,比如单引号''、双引号""等等,难免会出现语法错误。
而 PHP 中的定界符能够定义一段较长的字符串,并且可以按照原样输出在其内部的东西,包括换行、缩进等格式,在定界符中的任何特殊字符都不需要转义,而且定界符中的变量也能被解析。这也是为什么 PHP 要引入定界符的原因之一。
定界符的使用
定界符的语法格式如下:
<<<str
一段文本
str;
其中,符号<<<是关键字,必须使用;str 为我们自定义的标识符,用来当作文本的起始标识符和结束标识符,前后的标识符名称必须完全相同。
另外,结束标识符后面的分号不能省略,同时结束标识符必须另起一行顶头写。还有就是标识符的命名必须遵循 PHP 中其他标签的命名规则:只能包含字母、数字、下划线,而且必须以下划线或非数字字符开始。
需要注意的是,使用定界符定义的字符串中虽然能解析变量,但是不能进行运算。
【示例】使用定界符输出变量中的值。
<?php
$website = 'C语言中文网';
$url = '';
$title = 'PHP 教程';
$str = <<<str
<!DOCTYPE html>
<html>
<head>
<title> $title </title>
</head>
<body>
您正在访问的是:<strong style="color:red">$website</strong><br>
网址:<a href="$url" target="_blank">$url</a>