我想在配置文件中保留一个字符串,由PHP parse_ini_file()
函数解析。但是,此字符串包含一些需要以某种方式编码的特殊字符(代码如0x2C
或0x3D
)。有没有办法在这样的文件中用十六进制代码编写特殊字符?
答案 0 :(得分:7)
转义INI值的正确方法是将它们包含在"double quotes"
中。如果您的字符串不包含双引号,则可以将其用作双引号括起来的值。
根据http://php.net/manual/en/function.parse-ini-file.php#100046
,只要值中没有两个连续的双引号,使用反斜杠转义单引号似乎就可以正常工作如果你想自己逃避,你当然可以:
htmlspecialchars
/ htmlspecialchars_decode
转义<
,>
,&
和"
。
htmlentities
/ html_entitity_decode
将非常有侵略性地(但也非常安全地)转移到HTML实体
urlencode
/ urldecode
将转义除_-~.
以外的所有特殊字符。
base64_encode
/ base64_decode
将确保编码的字符串仅包含字母数字字符和+=/
。这可能是编码二进制数据的最佳选择,但不能保持可读性。