当前位置:  编程技术>php

PHP中使用asort进行中文排序失效的问题处理

    来源: 互联网  发布时间:2014-08-26

    本文导语:  PHP中有非常方便的对数组进行重新排序的方法——asort,关于asort的使用方法可以看 这里 。但是asort对含有中文key的数组进行排序时,有时候并不是按照字母顺序。这主要是编码问题,如果编码为UTF-8,则不会按照字母顺序来排...

PHP中有非常方便的对数组进行重新排序的方法——asort,关于asort的使用方法可以看 这里 。但是asort对含有中文key的数组进行排序时,有时候并不是按照字母顺序。这主要是编码问题,如果编码为UTF-8,则不会按照字母顺序来排,解决方法是先转换成GBK编码,排序完再转回UTF-8.

示例:有一个数组$pass,结构类似为

Array
(
 [0] => stdClass Object
  (
   [username] => 张三
   [password] => DQ9uqQW2+UudOsZpQMnyvGG9L+RHZB6LRzBVDvAEL9uOBNf2zTWUnykhZFjhbzCH+LrSslRx9eSqU/n3gSLSUA==
  )

 [1] => stdClass Object
  (
   [username] => 李四
   [password] => 2P/3j50ibk1BYmjHL+7/tt0d6LuOQMN9m8klXJCZbcajQtH5749jFTtH17WxiBZ9p425b4KIV/Xdv/7Bu4pJAQ==
  )

 [2] => stdClass Object
  (
   [username] => 王五
   [password] => caq8lq0l6uxJPRx+sCBsBFUojSF+ox98gwO6c/AquXQ/y/aj/l/ziEGsXRSV+olcK7iKOJJ4IZZvX8DMPWZRRA==
  )

 [3] => stdClass Object
  (
   [username] => 赵六
   [password] => taXp4jX0vO3VoFLyANfGrSjzy76WQQHMnzYAN9CyI20uKxLFMScXrFR3P525eImy0pG5zk8btBJoS/RyMxzJGQ==
  )

)

使用下面的代码,将会把这个数组按照username的拼音排序。

foreach ($pass as $key) {
 $key->username = iconv('UTF-8', 'GBK', $key->username);
}
asort( $pass );
foreach ($pass as $key) {
 $key->username = iconv('GBK', 'UTF-8', $key->username);
}


    
 
 

您可能感兴趣的文章:

  • php判断字符串是否全是中文或含有中文
  • 中文分词PHP扩展 MFSOU
  • php网页标题中文乱码如何解决
  • 解决php json_encode中文转码、乱码问题
  • php网页标题中文乱码的有效解决方法
  • php中文字符串截取函数示例
  • PHP中文套件 PHPnow
  • php+正则将字符串中的字母数字和中文分割
  • php导入csv文件中文乱码的解决方法
  • PHP中文分词扩展 robbe
  • PHP中file_exists函数不支持中文名的解决方法
  • 支持中文和其他编码的php截取字符串函数分享(截取中文字符串)
  • php截取中文字符串(无乱码)方法
  • 解决php csv文件导入mysql中文乱码
  • PHP解决URL中文GBK乱码问题的两种方法
  • 解决php接收shell返回的结果中文乱码问题
  • php mb_substr()函数截取中文字符串应用示例
  • 我在安装LINUX 9简体中文版时,漏装了一个PHP-MYSQL的模块,那我现在该如何加装?
  • php中文乱码怎么办如何让浏览器自动识别utf-8
  • php中file_exists函数不支持中文名怎么办?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • PHP快速排序小例子 php快速排序实现方法
  • php排序算法 PHP版快速排序与冒泡排序
  • php数组随机排序示例
  • php数组排序方法大全(脚本学堂整理奉献)
  • PHP二维数组排序的函数
  • 排序算法之PHP版快速排序、冒泡排序
  • php冒泡排序算法实现代码
  • php选择排序算法实现代码
  • 一个PHP二维数组排序的函数分享
  • php根据键值对二维数组排序的小例子
  • 又一个PHP实现的冒泡排序算法分享
  • php二维数组按指定键值key排序的例子
  • php实例分享之二维数组排序
  • PHP数组分组排序实例代码
  • 不使用php api函数实现数组的交换排序示例
  • php中多维数组按指定value排序的实现代码
  • php中文数组排序方法示例
  • php对二维数组进行排序的简单实例
  • PHP排序函数有哪些?
  • PHP中数组的分组排序实例
  • 修改配置真正解决php文件上传大小限制问题(nginx+php)
  • IIS7配置PHP图解(IIS7+PHP_5.2.17/PHP_5.3.5)
  • PHP 5.4.19 和 PHP 5.5.3 发布及下载地址
  • php输入流php://input使用示例(php发送图片流到服务器)
  • 修改配置真正解决php文件上传大小限制问题(apache+php)
  • PHP转换器 HipHop for PHP
  • PHP去除html标签,php标记及css样式代码参考
  • PHP 框架 Pop php
  • PHP 'ext/soap/php_xml.c'不完整修复存在多个任意文件泄露漏洞
  • PHP的JavaScript框架 PHP.JS
  • php通过socket_bind()设置IP地址代码示例


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3