php中文截取无乱码

常见字符编码规律:

php中文截取无乱码_第1张图片


代码实现:

 0x81) {
			$substr_arr[] = $str[$i] . $str[$i+1];
			$i++;
		} else {
			$substr_arr[] = $str[$i];
		}
		$char_len++;
	}
	if($char_len <= $length) {
		return $str;
	}
	return implode('', array_slice($substr_arr, $start, $length));
}

/*
字符集编码范围
		第一字节范围 	第二字节范围
gb2312 	0xa1-0xf7 		0xa1-0xfe
gbk 	0x81-0xfe   	0x40-0xfe 	去除 **7f
big5 	0xa1-0xf9 		0x40-0x7e 	0xa1-0xfe
*/

// BOM头:EFBBBF

/*
UTF-8 编码规律:
1字节 0xxxxxxx
2字节 110xxxxx 10xxxxxx
3字节 1110xxxx 10xxxxxx 10xxxxxx
4字节 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
5字节 111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
6字节 1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
*/

UTF-8 编码实现:




你可能感兴趣的:(php)