4

文字列操作関数の UTF8 セーフな代替手段を探していました。さまざまなご意見やご提案をいただきました。次の関数が UTF-8 で問題を引き起こす可能性があるかどうか、もしそうなら、代わりに何を使用すればよいかお尋ねしたいと思います。PHP マニュアルの mb_ プレフィックス付き関数のリストは知っていますが、使用しているすべての関数があるわけではありません。

関数は次のとおりです: implode、explode、str_replace、preg_match、preg_replace

ありがとうございました

4

2 に答える 2

6

explode同一のバイト シーケンスを探し、その時点で文字列を分離します。UTF-8 は安全に ASCII と下位互換性があるため、問題なく動作します。implode文字列を組み立てるだけで、UTF-8 の特性により問題なく動作します。str_replace同じ理由で機能します。修飾子preg_を使用している限り、関数は正常に機能します。/u

于 2012-08-24T14:54:52.473 に答える
1

UTF8 文字を安全に操作する必要がある場合は、次のようにします。

mb_internal_encoding('UTF-8');
preg_replace( '`...`u', '...', $string ) // with the u (unicode) modifier
于 2012-08-24T14:48:51.857 に答える