与HTML实体相关的函数
htmlspecialchars函数
描述:预定义的字符转换为HTML实体
语法:string htmlspecialchars(string $string [,int $flags = ENT_COMPAT)
说明:$flags参数规定如何处理引号,其值可以为:
ENT_COMPAT 默认,仅编码双引号
ENT_QUOTES 编码双引号和单引号
ENT_NOQUOTES 不编码任何引号
$str = "A>B,B<C,Tom&John,He said: \"OK\""; echo htmlspecialchars($str); //通过str_replace进行转换
$str1 = str_replace('&','&',$str);//必须是第一 $str2 = str_replace('>','>',$str1);
$str2 = str_replace('<','<',$str2);
$str2 = str_replace('"','"',$str2);
$str2 = str_replace("'",''',$str2);
echo '<br>';
echo $str2;
那么htmlspecialchars($str)这个函数就是等价于下面的一组函数
至于为什么一定要先替换&,因为后面的实体都带有&,所以要先换它,避免后面把实体的&符号给换掉了。