[請益] 以字串索引的陣列做降冪排序

看板PHP作者 (真理斯金)時間16年前 (2009/07/14 23:28), 編輯推噓4(406)
留言10則, 4人參與, 最新討論串1/1
假設我現在有個陣列是 $age = array( 'jacky' => 16, 'mary' => 20, 'tony' => 12, 'rock' => 22 ) 我如果用 asort($age) 然後 print_r($age) 出來的結果是: Array( [tony] => 12 [jacky] => 16 [mary] => 20 [rock] => 22 ) 好像沒看到從大排到小的function可以call 有辦法讓他是從大排到小或是只取最大的k個嗎? -- ╭──╮╭──╮┌╭─╮ ○ ┌┐┌┐╭──╮┌┐┌┐ ○ ┌╭─╮╭──┐ │╭─┘│╭╮││╭╮│ ┌┐ │││││╭─╯│╰╭╯ ┌┐ │╭╮││╭╮│ │┌┐││┌─╯││││ ││ │╰┘│╰─╮╮│╭╮╮ ││ ││││╰─┐│ ╰──╯╰──╯└┘└┘ └┘ ╰─└┘╰──╯└┘└┘ └┘ └┘└┘╰──╯ http://www.wretch.cc/blog/Geniusking -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.45.225.128

07/14 23:40, , 1F
就用arsort()啊
07/14 23:40, 1F

07/14 23:59, , 2F
感謝!!那有辦法直接輸出最大值的index 'rock'嗎
07/14 23:59, 2F

07/15 03:27, , 3F
$age[0]咧?
07/15 03:27, 3F

07/15 09:16, , 4F
echo $age['rock']; 這樣就可以了
07/15 09:16, 4F

07/15 11:13, , 5F
樓上誤會我的意思了@@
07/15 11:13, 5F

07/15 11:17, , 6F
我要印出索引,目前想法是再用一個array存索引的字串
07/15 11:17, 6F

07/15 11:17, , 7F
但是感覺好笨,$age[0]這樣也不行耶
07/15 11:17, 7F

07/15 12:23, , 8F
key($age);
07/15 12:23, 8F

07/15 12:23, , 9F
接在arsort後,假設你沒有next過的話,key就回傳第一
07/15 12:23, 9F

07/15 16:14, , 10F
樓上正解!! 大大好威!
07/15 16:14, 10F
文章代碼(AID): #1ANAGNcY (PHP)
文章代碼(AID): #1ANAGNcY (PHP)