php substr,iconv_substr,mb_substr
2903 ワード
phpで中国語文字列の切り取りを行う場合、2つの関数iconv_がよく使われます.substrとmb_substr、この2つの関数をどのように選択すればいいですか?ここで紹介した例を参考にすれば分かります.
関数substrとiconv_を使用したサンプルコードsubstr,mb_substr
説明:上記のコードは2つの関数iconv_を使用しています.substrとmb_substrは、現在の文字の下で文字列の切り取りを行い、中国語の文字の切り取りが乱れないようにすることができます.どうすればいいですか?
1、iconvライブラリは一部のオペレーティングシステムで正しく動作しない可能性があります.GNU拡張ライブラリをインストールして正常な動作を保証する必要があります.mb_substr関数の互換性がより良い.2、iconv関数は、現在の文字列を対応する符号化に変換して切り取るが、mb関数は指定した符号化に直接基づいて切り取る(安全なマルチバイト切り取りを提供する)ため、mb関数の切り取り効率が高い.だからmb_substr関数は、中国語文字列の切り取りに最適です.
関数substrとiconv_を使用したサンプルコードsubstr,mb_substr
1 <html>
2 <head><meta charset='utf-8'>
3 <title> _ _www.jbxue.com</title>
4 </head>
5 <body>
6 <?php
7 $str='123 456 ';
8 echo substr($str,0,4);
9 echo '<br>';
10 echo iconv_substr($str,0,4,'utf-8');
11 echo '<br>';
12 echo mb_substr($str,0,4,'utf-8');
13 ?>
14 </body>
15 </html>
説明:上記のコードは2つの関数iconv_を使用しています.substrとmb_substrは、現在の文字の下で文字列の切り取りを行い、中国語の文字の切り取りが乱れないようにすることができます.どうすればいいですか?
1、iconvライブラリは一部のオペレーティングシステムで正しく動作しない可能性があります.GNU拡張ライブラリをインストールして正常な動作を保証する必要があります.mb_substr関数の互換性がより良い.2、iconv関数は、現在の文字列を対応する符号化に変換して切り取るが、mb関数は指定した符号化に直接基づいて切り取る(安全なマルチバイト切り取りを提供する)ため、mb関数の切り取り効率が高い.だからmb_substr関数は、中国語文字列の切り取りに最適です.