PHP中使用asort進(jìn)行中文排序失效的問(wèn)題處理
PHP中有非常方便的對(duì)數(shù)組進(jìn)行重新排序的方法——asort,關(guān)于asort的使用方法可以看 這里 。但是asort對(duì)含有中文key的數(shù)組進(jìn)行排序時(shí),有時(shí)候并不是按照字母順序。這主要是編碼問(wèn)題,如果編碼為UTF-8,則不會(huì)按照字母順序來(lái)排,解決方法是先轉(zhuǎn)換成GBK編碼,排序完再轉(zhuǎn)回UTF-8.
示例:有一個(gè)數(shù)組$pass,結(jié)構(gòu)類(lèi)似為
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== ) )
使用下面的代碼,將會(huì)把這個(gè)數(shù)組按照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與MYSQL中UTF8 中文排序示例代碼
- PHP與MYSQL中UTF8編碼的中文排序?qū)嵗?/a>
- php數(shù)組中包含中文的排序方法
- PHP讀取數(shù)據(jù)庫(kù)并按照中文名稱(chēng)進(jìn)行排序?qū)崿F(xiàn)代碼
- PHP基于ICU擴(kuò)展intl快速實(shí)現(xiàn)漢字轉(zhuǎn)拼音及按拼音首字母分組排序的方法
- PHP排序之二維數(shù)組的按照字母排序?qū)崿F(xiàn)代碼
- php實(shí)現(xiàn)數(shù)組按拼音順序排序的方法
- PHP 數(shù)組排序方法總結(jié) 推薦收藏
- PHP 多維數(shù)組的排序問(wèn)題 根據(jù)二維數(shù)組中某個(gè)項(xiàng)排序
- php 數(shù)組操作(增加,刪除,查詢(xún),排序)等函數(shù)說(shuō)明
- PHP實(shí)現(xiàn)獲取第一個(gè)中文首字母并進(jìn)行排序的方法
相關(guān)文章
php操作xml入門(mén)之xml標(biāo)簽的屬性分析
這篇文章主要介紹了php操作xml入門(mén)之xml標(biāo)簽的屬性,分析了xml標(biāo)簽的基本屬性與用法,需要的朋友可以參考下2015-01-01
php實(shí)現(xiàn)子字符串位置相互對(duì)調(diào)互換的方法
這篇文章主要介紹了php實(shí)現(xiàn)子字符串位置相互對(duì)調(diào)互換的方法,可實(shí)現(xiàn)簡(jiǎn)單字符串中兩個(gè)子字符串互換的功能,涉及php字符串運(yùn)算與插入、替換等操作的相關(guān)技巧,需要的朋友可以參考下2016-06-06
php中使用session防止用戶(hù)非法登錄后臺(tái)的方法
這篇文章主要介紹了php中使用session防止用戶(hù)非法登錄后臺(tái)的方法,詳細(xì)分析了session防止用戶(hù)非法登錄后臺(tái)的原理與相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2015-01-01
CentOS系統(tǒng)中PHP安裝擴(kuò)展的方式匯總
本文給大家匯總介紹了CentOS系統(tǒng)中PHP安裝拓展的方式,主要有 包管理式 的 yum 安裝、pecl 安裝,以及 源碼編譯安裝??偨Y(jié)的非常全面,推薦給大家。2017-04-04
PHP使用PDO操作數(shù)據(jù)庫(kù)的亂碼問(wèn)題解決方法
這篇文章主要介紹了PHP使用PDO操作數(shù)據(jù)庫(kù)的亂碼問(wèn)題解決方法,實(shí)例分析了編碼設(shè)置及屬性設(shè)置解決亂碼問(wèn)題的實(shí)現(xiàn)技巧,需要的朋友可以參考下2016-04-04
完美解決dedecms中的[html][/html]和[code][/code]問(wèn)題
完美解決dedecms中的[html][/html]和[code][/code]問(wèn)題...2007-03-03

