在teamtreehouse.com学习PHP时,我遇到了这个问题:
$colors = array("Red", "Orange", "Yellow", "Green", "Blue", "Purple", "Black");
哪个函数会对数组进行排序,因此第一个元素是“黄色”?
这个问题的答案是arsort()
,但我不明白为什么,因为PHP man说:
arsort - 按相反顺序对数组进行排序并保持索引关联
我从那个人那里了解到,arsort()
只会改变顺序,所以Black
将成为第一个而不是最后一个,但是,为什么树屋问题的回答说黄色将是第一个?
问题可能是作者的错误吗?谢谢。
注意:我试图创建一个对类似混淆的人有用的标题。
asort
和arsort
都对输入数组进行排序(在这种情况下按字母顺序排列),这只是排序的顺序问题。
asort - 对数组进行排序并维护索引关联
arsort - 按相反顺序对数组进行排序并保持索引关联
因此,它不仅仅是像array_reverse
那样的简单数组反转,它也对它们进行排序。