易百教程

PHP字符串定界符

在PHP中,可以通过两种方式使用自己的分隔符:heredoc语法和nowdoc语法。

Heredoc相当于使用双引号:

  • 变量名称替换为变量值
  • 可以使用转义序列来表示特殊字符。

Nowdoc的工作方式与单引号相同:不进行变量替换或转义; 字符串完全按原样使用。

$myString =  <<< DELIMITER
(insert string here)
DELIMITER;

DELIMITER是要用作分隔符的文本字符串。
它必须只包含字母,数字和下划线,并且必须以字母或下划线开头。
传统上,heredoc分隔符用大写字母写成,就像常量一样。

Nowdoc

NowdocHeredoc语法类似; 唯一的区别是分隔符用单引号括起来:

$myString =  <<<'DELIMITER'
(insert string here)
DELIMITER;

下是运行中的heredoc语法示例:

<?php
$religion ='hi';

$myString =  <<< END_TEXT
"' $religion,'hi'test
test!'"
END_TEXT;

echo " $myString";
?>

执行上面示例代码,得到以下结果:

"' hi,'hi'test
test!'"

以下是使用nowdoc语法的示例:

<?php
$religion ='hi';

$myString =  <<<'END_TEXT'
"'$religion,'test' test
test!'"
END_TEXT;

echo " $myString";
?>

执行上面示例代码,得到以下结果:

 "'$religion,'test' test
test!'"