この記事の例では、PHP が ? 記号のない中国語の文字列をインターセプトするためのソリューションを説明します。参考のために皆さんと共有してください。詳細は次のとおりです。
PHP が中国語と英語の混合文字列をインターセプトする場合、最後の中国語の文字が 2 つの半分に分割されることがよくあります。例: 文字列の最初の 18 文字をインターセプトします。
<?php $text = "1欢迎访问sina新浪播客"; $value = substr($text, 0, 18); echo $value."<BR>"; ?>
1欢迎访问新浪?BR>
<?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新浪