ホームページ  >  記事  >  バックエンド開発  >  PHP は文字化けせずに中国語の文字列をインターセプトします (ord()、substr() 関数)

PHP は文字化けせずに中国語の文字列をインターセプトします (ord()、substr() 関数)

WBOY
WBOYオリジナル
2016-07-25 08:56:531097ブラウズ
この記事では、PHP で文字化けせずに中国語の文字列をインターセプトするための 2 つの関数、つまり ord() 関数と substr() 関数を紹介します。困っている友達は参考にしてください。

PHP プログラミングの注意: UTF-8 エンコード仕様に従って、連続する 3 文字は 1 文字としてカウントされます。

次のように、中国語の文字列をインターセプトするコードを見てみましょう:

リーリー

上記のコードは、UTF-8 でエンコードされた文字列を単語数に応じて切り取る処理を実装しています。文字を 1 つの単語として切り取りたい場合は、$n=$n+0.5 を $n=$ n+1 に変更する必要があります。 ;

さらに、PHP は独自の処理関数を提供していることに注意してください。これは mb_substr($str,int,int,'utf-8'); を使用して実現できます。 パラメータは、ターゲット文字列 $str、インターセプト開始位置 int、インターセプト長 int、およびインターセプト後の文字エンコーディング (utf-8) です。

返される結果: 開始位置からの int 文字数 (開始位置の文字も長さに含まれます)。

例:

リーリー

出力結果: 3 つの単語の範囲



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。