我该如何将所有特殊字符转换为它们对应的HTML实体?
特殊字符包括 $ & / \ { } ( - ' , @
等。
我尝试使用 htmlentities() 和 htmlspecialchars(),但没有解决我的问题。
请在 这里 查看。我想要的输出格式是 实体编号即第三列。
实际情况是 - 我需要从 fckeditor 中获取输入,然后保存到数据库中。因此,我需要将文本中的所有特殊字符转换为它们对应的HTML实体,否则会出现错误。
我该如何将所有特殊字符转换为它们对应的HTML实体?
特殊字符包括 $ & / \ { } ( - ' , @
等。
我尝试使用 htmlentities() 和 htmlspecialchars(),但没有解决我的问题。
请在 这里 查看。我想要的输出格式是 实体编号即第三列。
实际情况是 - 我需要从 fckeditor 中获取输入,然后保存到数据库中。因此,我需要将文本中的所有特殊字符转换为它们对应的HTML实体,否则会出现错误。
ord()
函数。
顺便说一下,divaka
所提到的是正确的。
像这样做...
<?php
function getHTMLASCIIEquiv($val)
{
$arr=['$','&','/','\\','{','}','(','-','\'',',','@'];
$val = str_split($val);$str="";
foreach($val as $v)
{
if(in_array($v,$arr))
{
$str.="&#".ord($v).";";
}
else
{
$str.=$v;
}
}
return $str;
}
echo getHTMLASCIIEquiv('please check $100 & get email from test@cc.com');
OUTPUT :
please check $100 & get email from test@cc.com
htmlspecialchars()
?http://in3.php.net/manual/zh/function.htmlspecialchars.php - Shankar Narayana Damodaranecho htmlspecialchars("&#" . ord('$') . ";");
- divaka