3

parse_ini_file()PHP関数で解析される特定の文字列を構成ファイルに保持したいと思います。ただし、この文字列には、何らかの方法でエンコードする必要のある特殊文字(0x2Cまたはのようなコードを含む)が含まれています。0x3Dそのようなファイルに16進コードで特殊文字を書く方法はありますか?

4

1 に答える 1

8

INI値をエスケープする適切な方法は、それらをで囲むことです"double quotes"。文字列に二重引用符が含まれていない場合は、二重引用符で囲まれた値として使用できます。

http://php.net/manual/en/function.parse-ini-file.php#100046のように、値に2つの連続する二重引用符がない限り、バックスラッシュを使用して一重引用符をエスケープすることは機能するようです。

あなたがあなた自身の脱出をしたいなら、あなたは確かに次のことができます:

htmlspecialchars/は、、、およびをエスケープhtmlspecialchars_decodeします。<>&"

htmlentities/ html_entitity_decodeHTMLエンティティに非常に積極的に(しかし非常に安全に)エスケープします

urlencode/urldecodeは、を除くすべての特殊文字をエスケープします_-~.

base64_encode/base64_decodeは、エンコードされた文字列に英数字と。のみが含まれるようにします+=/。これはバイナリデータのエンコードには最適かもしれませんが、読みやすさは維持されません。

于 2012-11-09T12:02:53.510 に答える