wolves Posted April 3, 2006 Share Posted April 3, 2006 I have an array like this[code]Array ( [0] => Array ( [id] => 99 [text] => ZZZZZ ) [1] => Array ( [id] => 89 [text] => MYTEST ) [2] => Array ( [id] => 79 [text] => AAAAA ) [3] => Array ( [id] => [text] => SELECT ONE ) )[/code]Now, how to order this array by alphabetic [text] key, and keeping the [id] intact?tks..arsort , solved Link to comment https://forums.phpfreaks.com/topic/6493-array-order/ Share on other sites More sharing options...
Barand Posted April 3, 2006 Share Posted April 3, 2006 arsort() will sort it by id descending.If that solved it, you asked the wrong question.But if you do want it sorted by 'text' you need usort() and a custom sort function.[code]$data = array ( 0 => array ( 'id' => 99, 'text' => 'ZZZZZ' ) , 1 => array ( 'id' => 89, 'text' => 'MYTEST' ), 2 => array ( 'id' => 79, 'text' => 'AAAAA' ), 3 => array ( 'id' => 109, 'text' => 'SELECT ONE' ) );function textsort($a, $b) { return strcmp($a['text'], $b['text']);}usort ($data, 'textsort');// check resultsecho '<pre>', print_r ($data, true), '</pre>';[/code] Link to comment https://forums.phpfreaks.com/topic/6493-array-order/#findComment-23586 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.