1、引号界说字符串
在PHP中,凡是一个字符串被界说在一对引号中,如:
'I am a string in single quotes'
"I am a string in double quotes"
PHP语法剖析器是用成对的引号来判别一个字符串的。因而,一切字符串必需利用统一种单或双 引号来界说入手下手和停止。例如,上面的字串界说是不正当的:
"I am not a valid string since I have unmatching quote marks'
'Me neither!"
界说字符串时,只要一种引号被视为界说符,即单引号或双引号。因而,假如一个字符串由双引号入手下手,那末只要双引号被剖析器解析。如许,你就能够在双引号串中包括任何其他字符,乃至单引号。上面的引号串都是正当的:
$s = "I am a 'single quote string' inside a double quote string";
$s = 'I am a "double quote string" inside a single quote string';
当PHP碰到与串的开首绝对应的引号时,便以为已到了字符串尾部,因而:
"Why doesn't "this" work?"
实践上被PHP语法剖析器分红三个局部:
"Why doesn't "――包括一个单引号的双引号串
this――过剩的字符,剖析器没法处置" work?" ――通俗字符串
下面的这个例子妄图在双引号串中包括双引号,而剖析器在碰到第二个双引号时便以为字符串停止了。要到达包括引号的目标, 必需剖析器在碰到串内通俗引号的时分疏忽它的原意,咱们在引号的后面加上一个反斜杠来告知PHP:这个引号是字符串的一局部,准确的暗示办法是如许:
"Why doesn't \"that\" work?"
在英文字符串中一个罕见的成绩是撇号'的利用,由于它就是一个单引号,而在英文串中非常罕见 (英文一切格)。你必需当心处置这些字符:
'You\'d better escape your apostrophes'
可以看到反斜杠在字符串中有他的特别寄义,当咱们需求在字符串中包括反斜杠自己时,需求在
该符号后面多加一个反斜杠。例如:
$file = "c:\windows\system.ini";
echo $file; // 打印了局为: c:windowssystem.ini
$file = "c:\\windows\\system.ini";
echo $file; // 打印了局为: c:\windows\system.ini
另外一种字符串界说体例,可以消弭特别字符的懊恼,并且便于援用较长的文本。该字符串界说办法以<<<符号紧跟一个自界说字符串开首,最初一行以该自界说字符串停止,而且必需顶格。