php - 从 PHP 中的字符串替换此十六进制字符

标签 php character-encoding replace preg-replace hex

我正在根据来自数据库(和一些 JSON 提要)的数据生成 XML。

我在处理某些包含破坏我的 XML 的十六进制字符的文本时遇到了一些问题。

例如,查看我从 Chrome 收到的错误的屏幕截图: XML error

我确定了给我带来问题的十六进制字符(我相信它们被称为控制字符)。这些是:

0x03
0x05
0x16
0x0E

在将这些字符打印到我的 XML 输出之前,如何用 PHP 替换它们?

谢谢!

最佳答案

不仅仅是那些字符会破坏它...

preg_replace('/[\x00-\x1f]/', '?', $s);

关于php - 从 PHP 中的字符串替换此十六进制字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10133015/

相关文章:

Java replaceAll/用美元符号实例替换字符串

javascript正则表达式用链接替换一些单词,但不在现有链接中

php - 来自超出范围的另一个查询结果的 SQL 查询

php - 如何通过 PHP 在 Windows 服务器上执行 .exe 文件?

php - CKEditor <p> 标签和删除填充

linux - 如何获得具有不同字符集的唯一字符串

php - Flex - 如何将 Flex DropDownList 的所选项目的 ID 发送到服务器?

php - Nginx : UTF-8 charset instead of ISO-8859-1

mysql - 数据库 : column encoding, 什么时候重要?

javascript - 使用 Javascript 将字符串添加到 CSS 代码