二维数组排序,需要排序的字段是中文,怎么实现?
我现在是把中文字段转化成了拼音,用拼音排序的,有没有更科技高效的办法。
回复内容: 二维数组排序,需要排序的字段是中文,怎么实现?
我现在是把中文字段转化成了拼音,用拼音排序的,有没有更科技高效的办法。
首先吧,要对array_multisort()理解,可看手册
(sort_array, sorting type, $source_array) 排序数组,排序方式,排序的源数组
其次,utf-8 转成 gbk2312 才能实现以拼音顺序。上代码吧,感受一下。
header(content-type:text/html;charset=utf-8); $array = array( array(新浪, 'x'), array(百度, 'b'), array(腾讯, 't') ); //转换编码构造 foreach ($array as $key => $item) { $sort_array[] = iconv(utf-8, gb2312, $item[0]); } //调用函数,注意参数相关写法 array_multisort($sort_array, sort_string, $array); var_dump($array);
