我想保持一定的字符串在配置文件中,这是由PHP解析parse_ini_file()
函数。 然而,这个字符串包含一些特殊字符(像代码0x2C
或0x3D
)需要以某种方式进行编码。 有没有办法写在这样一个文件一个十六进制代码特殊字符?
Answer 1:
逃脱INI值的正确方法是将它们封闭在"double quotes"
。 如果您的字符串不包含双引号,你可以使用它作为双引号括起来的值。
用反斜杠的单引号,似乎只要不在值的两个连续的双引号工作,按照http://php.net/manual/en/function.parse-ini-file.php#100046
如果你想要做自己的转义,你当然可以:
htmlspecialchars
/ htmlspecialchars_decode
逸出<
, >
, &
和"
。
htmlentities
/ html_entitity_decode
将难逃非常aggresively(但也很安全)为HTML实体。
urlencode
/ urldecode
将难逃所有特殊字符除了_-~.
。
base64_encode
/ base64_decode
将确保经编码的串只包含字母数字字符和+=/
。 这可能是最佳的编码的二进制数据,但不保留可读性。
文章来源: How to escape special characters in a file parsed by PHP parse_ini_file function?