0

抱歉,如果该问题已经得到解答,但我在互联网上找到的内容对我没有太大帮助。我遇到了 php 和简单引号的问题

这是我的代码:

echo "<span onclick='search(\"".$value."\");'>".some stuff."</span>";

我的问题是 $value 有时带有简单的引号(它们是音乐标题)。所以我遇到了一些问题,'t'代表麻烦,不能忍受失去你......

我试过了,addslashes($value)但它不起作用。任何想法 ?谢谢 :)

4

5 回答 5

2

尝试htmlspecialchars($value,ENT_QUOTES);

最好也摆脱所有这些斜线:

?>
<span onclick='search("<?=htmlspecialchars($value,ENT_QUOTES);?>");'>
    some stuff
</span>
<?php
// back to php
于 2013-05-15T09:40:31.753 回答
0

您可以使用 htmlentities 功能:

echo "<span onclick='search(\"".htmlentities($value, ENT_QUOTES)."\");'>".some stuff."</span>";
于 2013-05-15T09:39:51.250 回答
0

你的正确语法应该是这样的。使用htmlentites($value,ENT_QUOTES)处理特殊字符

$sanitizedValue  = htmlentites($value,ENT_QUOTES);

echo "<span onclick='search(\"{$sanitizedValue}\");'>some stuff</span>";
于 2013-05-15T09:51:46.330 回答
0

也许您可以进行 HTML 编码(http://php.net/manual/en/function.htmlentities.php),它会使用标题中的特殊字符生成 HTML 实体。一定要在接收端解码。

于 2013-05-15T09:38:07.350 回答
0
str_replace("'", "&#39;", $value); 

应该将引号更改为他们的 XML 实体...

于 2013-05-15T09:38:50.757 回答