我正在尝试找到一种更快捷的方法,用我的字符串中的单个替换所有双引号。
我有大量的html echo with with PHP但现在想用双引号包装这个html所以我可以使用变量而不必将它包装在'。$ string中。等
所以我很快写了这个:
$string = "test '""'fweffwf""'dwfwfe";
$string = str_replace('"', "'", $string);
echo $string;
但它打破了,因为我猜它认为我正在关闭字符串时遇到“
我已经拥有的html相当厚实,我将来还有更多工作要做,不想手动更改每一个。
有关于此的任何想法吗?
答案 0 :(得分:1)
如果难以转义引号,您可以使用heredoc syntax:
$string = <<<EOD
test '""'fweffwf""'dwfwfe
EOD;
echo $string;
输出:
test '""'fweffwf""'dwfwfe
答案 1 :(得分:0)
你的代码应该是,
<?php
$string = <<<EOT
test '""'fweffwf""'dwfwfe
EOT;
$pattern = "~\"~";
$replacement = "'";
echo preg_replace($pattern, $replacement, $string);
?> //=> test ''''fweffwf'''dwfwfe
不要忘记转义$pattern
变量中的双引号。