本文发布于:2012-09-07,最后更新于:2018-12-24,如果内容失效请留言告知。
PHP内置了很多排序函数,对于中文字符,可以当作字符串的方式进行排序。但是如果希望按照汉语拼音的顺序排列,则需要转换为GBK编码进行排序。因为 GBK 的中文本身即按照汉字拼音顺序编码,故可先转换为 GBK 编码字符排序,然后再转换为 utf8 即可。以下为 utf8 编码中文数组排序示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | /* * 非GBK编码的中文数组排序 * 由于GBK的中文本身即按照汉字拼音顺序编码,故可转换为GBK编码字符排序,然后再转换为utf8即可 */ function utf8_array_asort(& $array ) { if (!isset( $array ) || ! is_array ( $array )) { return false; } foreach ( $array as $k => $v ) { $array [ $k ] = trim( $v ); $array [ $k ] = iconv( 'UTF-8' , 'GBK//IGNORE' , $v ); } asort( $array ); foreach ( $array as $k => $v ) { $array [ $k ] = iconv( 'GBK' , 'UTF-8//IGNORE' , $v ); } return true; } |
实用文章
http://lzw.me/介绍很不错
很不错
这个是可以安排的呀