刚才做一个数组排序,发现utf-8下,用asort对值包含中文的数组排序,并不是按拼音排序。把utf-8转为gbk后,在使用asort就可以使中文按照拼音排序了,囧~~
代码:
来源: http://blog.sina.com.cn/s/blog_50e96c9b0100hy9p.html
代码:
foreach ($array as $key=>$value)
{
$new_array[$key] = iconv('UTF-8', 'GBK', $value);
}
asort($new_array);
foreach ($new_array as $key=>$value)
{
$array[$key] = iconv('GBK', 'UTF-8', $value);
}
来源: http://blog.sina.com.cn/s/blog_50e96c9b0100hy9p.html
UTF-8下中文数组排序
本文介绍了一个在UTF-8编码环境下使用asort进行中文数组排序时遇到的问题及解决方案。作者发现直接对包含中文字符的数组进行排序无法按照拼音顺序排列,通过将UTF-8编码转换为GBK编码后,再进行asort排序可以实现正确的拼音排序。
533

被折叠的 条评论
为什么被折叠?



