两种类型的引号作为字符串的文本块

时间:2012-09-11 03:21:00

标签: php string escaping quotes double-quotes

我正在使用基于某些自定义模板系统的网站。假设在模板中我可以使用标签 [custom_text] ,它将输出整个html块,通过CMS的富文本编辑器定义:

<b>Lorem ipsum dolor</b> sit amet, "consectetur adipisicing elit"<br /><br />
<b>sed doeiusmod</b> tempor incididunt ut's labore et dolore magna's aliqua.

请注意,它包含两种类型的引号。我无法对模板系统中的任何内容进行预处理,而不是将其实际输出到页面,因为带有模板系统的CMS已经过编码。

现在我实际上需要操作该块,例如从代码中删除所有换行符。我可以在页面上使用php,但我无法定义包含该代码块的字符串。如果我这样做:

$string = "[custom_text]";
$string = '[custom_text]';

块中的引号会挡住,过早地结束字符串。有没有明显的方法来处理这个问题?

2 个答案:

答案 0 :(得分:4)

不知道为什么我之前没有想过这个,但我可以简单地使用heredoc语法。

$string = <<<EOT
[custom_text]
EOT;

将解决此案。

答案 1 :(得分:0)

试试这个

<?php
$string = "This string has 'single quotes'";
echo addcslashes($string, '"\\');
?>

输出将如下所示

This string has 'single quotes'

本链接的答案

Click Here