根据W3C的标准,以下16进制的字符是不被允许出现在XML文件中的,即使放在<![CDATA[]]> 中,也不能幸免。
\\x00-\\x08
\\x0b-\\x0c
\\x0e-\\x1f
所以,需要对在这3个范围段的字符进行排除。
使用这个函数过滤下就好了。
根据W3C的标准,以下16进制的字符是不被允许出现在XML文件中的,即使放在<![CDATA[]]> 中,也不能幸免。
\\x00-\\x08\\x0b-\\x0c\\x0e-\\x1f
所以,需要对在这3个范围段的字符进行排除。
使用这个函数过滤下就好了。
function
XmlSafeStr(
$s
)
{
return preg_replace ( " /[\\x00-\\x08\\x0b-\\x0c\\x0e-\\x1f]/ " , '' , $s );
}
{
return preg_replace ( " /[\\x00-\\x08\\x0b-\\x0c\\x0e-\\x1f]/ " , '' , $s );
}