この記事の例では、PHP が ? 記号のない中国語の文字列をインターセプトするためのソリューションを説明します。参考のために皆さんと共有してください。詳細は次のとおりです。
PHP が中国語と英語の混合文字列をインターセプトする場合、最後の中国語の文字が 2 つの半分に分割されることがよくあります。例: 文字列の最初の 18 文字をインターセプトします。
<?php $text = "1欢迎访问sina新浪播客"; $value = substr($text, 0, 18); echo $value."<BR>"; ?>出力は結果です:
1欢迎访问新浪?BR>そこで、中国語と英語の混合文字列内の中国語文字のバイト数が奇数であるかどうかを判断するために次のコードを作成し、1 バイト少ない値をインターセプトして、漢字が完全に表示されていることを確認してください。
<?php $text = "1欢迎访问sina新浪播客"; $value = substr($text, 0, 18); $value_length = strlen($value); $value_count = 0; for ($i = 0; $i < $value_length; $i++) { if (ord($value{$i}) > 127) { $value_count++; } } if ($value_count % 2 != 0) { $value = substr($text, 0, $value_length - 1); } echo $value."<BR>"; ?>
1欢迎访问sina新浪この記事が PHP プログラミングのすべての人に役立つことを願っています。 中国語文字列を表示せずにインターセプトする PHP 実装に関するその他の関連記事については、PHP 中国語 Web サイトに注目してください。