截取 utf8 字符串 [中文]
//截取utf8字符串
function utf8Substr($str, $from, $len)
{
return preg_replace(‘#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,’.$from.’}’.
‘((?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,’.$len.’}).*#s’,
‘$1’,$str);
}
php json 中文不进行转义
/**
* 不转义中文字符和\/的 json 编码 方法
* @param array $arr 待编码数组
* @return string
*/
function json_encode_no_zh($arr) {
$str = str_replace ( “\\/”, “/”, json_encode ( $arr ) );
$search = “#\\\u([0-9a-f]+)#ie”;
if (strpos ( strtoupper(PHP_OS), ‘WIN’ ) === false) {
$replace = “iconv(‘UCS-2BE’, ‘UTF-8’, pack(‘H4’, ‘\\1’))”;//LINUX
} else {
$replace = “iconv(‘UCS-2’, ‘UTF-8’, pack(‘H4’, ‘\\1’))”;//WINDOWS
}
return preg_replace ( $search, $replace, $str );
}