PHP mbstring.func_overload vs mbstring関数の使用[複製]
質問
この質問にはすでに回答があります:
UTF-8に準拠した他の言語をサポートするために、サイトの文字列処理を適合させたい。これを行う最良の方法は、すべての標準文字列関数を放棄することです。
2つのオプションがあるため、php.iniで mbstring.func_overload
オプションを設定するか、コードに戻ってすべての関数を mb _ * に置き換えることができますコード>。私のコードを使用している人は、サーバーの設定を変更する必要がないため、2番目のオプションの方が簡単だと思います。 (できれば!)
PHP 6がリリースされたときはどうですか?適切なマルチバイト処理をサポートするので、それが私の選択にむき出しがあるはずです。
解決
mbstring.func_overload
に対する議論は、サードパーティのライブラリ/コードを使用する場合、そのコードは" normal"問題の関数の機能-たとえば、substr()を呼び出して、正確なバイト境界でバイナリデータを含む文字列を切り捨てるか、strlen()を使用してUTF-8文字の長さではなくバイト単位の長さを取得します。
所属していません StackOverflow