业务需要将mongodb中的数据导出为xml, 部分字段封装成xml文件后, php再读入解析会有错误, xmlspye也无法解析.排查发现这40W+数据中有6条数据包含控制符, 用下面这个函数过滤后解决了.
<?php
/**
* 过滤特殊字符
* @param string $str
* @return string
*/
function xmlSafeStr($str)
{
return preg_replace("/[\\x00-\\x08\\x0b-\\x0c\\x0e-\\x1f]/", '', $str);
}
?>