php基础系列之字符串——字符的四种方式表达

字符的四种方式表达
一、单引号
 定义一个字符串的最简单的方法是用单引号把它包围起来(字符 ')。
要表达一个单引号自身,需在它的前面加个反斜线(\)来转义。要表达一个反斜线自身,则用两个反斜线(\\)。其它任何方式的反斜线都会被当成反斜线自己:也就是说若是想使用其它转义序列例如 \r 或者 \n,并不表明任何特殊含义,就单纯是这两个字符自己。
注意: 不像双引号和 heredoc 语法结构,在单引号字符串中的变量和特殊字符的转义序列将不会被替换。php


二、双引号
若是字符串是包围在双引号(")中, PHP 将对一些特殊的字符进行解析:spa

转义字符操作系统

字符 含义
\r  回车(ASCII 字符集中的 CR 或 0x0D (13))
\t 回车(ASCII 字符集中的 CR 或 0x0D (13))
\t  水平制表符(ASCII 字符集中的 HT 或 0x09 (9))
\v 垂直制表符(ASCII 字符集中的 VT 或 0x0B (11))(自 PHP 5.2.5 起)
\e Escape(ASCII 字符集中的 ESC 或 0x1B (27))(自 PHP 5.4.0 起)
\f  (ASCII 字符集中的 FF 或 0x0C (12))(自 PHP 5.2.5 起)
\\  反斜线
\n 换行(ASCII 字符集中的 LF 或 0x0A (10))

和单引号字符串同样,转义任何其它字符都会致使反斜线被显示出来。
用双引号定义的字符串最重要的特征是变量会被解析。.net

三、Heredoc语法结构
第三种表达字符串的方法是用 heredoc 句法结构:<<<。在该运算符以后要提供一个标识符(可用双引号包裹或可不用),而后换行。接下来是字符串 string 自己,最后要用前面定义的标识符做为结束标志。
结束时所引用的标识符必须在该行的第一列,并且,标识符的命名也要像其它标签同样遵照 PHP 的规则:只能包含字母、数字和下划线,而且必须以字母和下划线做为开头
注意:要注意的是结束标识符这行除了可能有一个分号(;)外,绝对不能包含其它字符。这意味着标识符不能缩进,分号的先后也不能有任何空白或制表符。更重要的是结束标识符的前面必须是个被本地操做系统承认的换行,好比在 UNIX 和 Mac OS X 系统中是 \n,而结束定界符(可能其后有个分号)以后也必须紧跟一个换行。
若是不遵照该规则致使结束标识不“干净”,PHP 将认为它不是结束标识符而继续寻找。若是在文件结束前也没有找到一个正确的结束标识符,PHP 将会在最后一行产生一个解析错误。
Heredocs 结构不能用来初始化类的属性。自 PHP 5.3 起,此限制仅对 heredoc 包含变量时有效。ci

四、Nowdoc语法结构
就象 heredoc 结构相似于双引号字符串,Nowdoc 结构是相似于单引号字符串的。Nowdoc 结构很象 heredoc 结构,可是 nowdoc 中不进行解析操做。这种结构很适合用于嵌入 PHP 代码或其它大段文本而无需对其中的特殊字符进行转义。
一个 nowdoc 结构也用和 heredocs 结构同样的标记 <<<, 可是跟在后面的标识符要用单引号括起来,即 <<<'EOT'。Heredoc 结构的全部规则也一样适用于 nowdoc 结构,尤为是结束标识符的规则。字符串

相关文章
相关标签/搜索