汉字按字节截取乱码

<?php

/**
*  实现原理:
*  1  对汉字按字节进行截取处理, 
*		若是检查到无乱码,说明截取合适
*       若是检查到有乱码,对字符串进行多字节截取, 
**/
$source_string = "中华人民共和国";
define("ALLOW_LENGTH",6);
define('ALLOW_LENGTH_ERROR',7);

$cut_string = substr($source_string,0,ALLOW_LENGTH);
echo $cut_string."&nbsp;&nbsp;";

$check_result = mb_check_encoding($cut_string,'UTF-8');

echo $check_result == true ?  'true' : 'false';
echo "&nbsp;&nbsp;正常截取汉字<br />";

$cut_string_error = substr($source_string,0,ALLOW_LENGTH_ERROR);
echo $cut_string_error."&nbsp;&nbsp;";

$check_result_error = mb_check_encoding($cut_string_error,'UTF-8');

echo $check_result_error == true ? 'true'  : 'false'; 
echo "&nbsp;&nbsp;截取汉字异常<br />";


$crc_cut_string_error = mb_substr($cut_string_error,0,-1,'utf-8');
echo $crc_cut_string_error."&nbsp;&nbsp;";
$check_result_error = mb_check_encoding($cut_string_error,'UTF-8');
echo $check_result_error == true  ? 'true' : 'false';
echo "&nbsp;&nbsp;修正截取结果<br />";

?>
相关文章
相关标签/搜索