PHP:在单个字符串中使用单引号和双引号
Posted
技术标签:
【中文标题】PHP:在单个字符串中使用单引号和双引号【英文标题】:PHP : Using single quotes and double quotes in single string 【发布时间】:2013-05-28 13:44:13 【问题描述】:我如何使用如下代码中的字符串。
$str = 'Is yo"ur name O'reil"ly?';
上面的代码只是一个例子..我需要使用包含单引号和双引号的大 html 模板。我尝试了 Addslashes php 方法,但是当我在该函数中使用单引号和双引号字符串时我收到语法错误。请帮助我。
注意:我的实时使用是json数据,如下所示。
$string = "
<html>
...
<b:if cond='data:blog.pageType == "item"'>
..
";
$string = '"method":"template","params":"1":"'.$string.'","token":"12345"';
【问题讨论】:
【参考方案1】:您可以为此使用heredoc:
$string = <<<EOM
<html>
...
<b:if cond='data:blog.pageType == "item"'>
..
EOM;
如果您也希望防止变量插值,您可以使用nowdoc(自 5.3 起):
$string = <<<'EOM'
<html>
...
<b:if cond='data:blog.pageType == "item"'>
..
EOM;
heredoc 和 nowdoc 都有特定的格式要求,因此请务必正确阅读手册。
【讨论】:
您可能还提到在heredoc 的结尾之前不允许有空格/制表符。 @Luceos 变量在 heredoc 中工作得很好。请参阅此示例 - php.net/manual/en/language.types.string.php#example-73 杰普,我知道;错字;办公室的温度一直在上升 xD @user2425700 如果你在 heredoc 中使用$variable
,就像在双引号中一样,例如"hello $variable"
.
@user2425700 顺便说一句,由于您对这个场景比较陌生,请阅读tour 部分了解如何接受答案。【参考方案2】:
我用heredoc做同样的事情
$string = <<< EOF
'Is yo"ur name O'reil"ly?'
EOF;
【讨论】:
【参考方案3】:你可以像这样使用heredoc:
$str = <<< EOF
'Is yo"ur name O'reil"ly?'
EOF;
【讨论】:
以上是关于PHP:在单个字符串中使用单引号和双引号的主要内容,如果未能解决你的问题,请参考以下文章