我有这个数组
$arr = array('key1' => 1, 'key3' => 3, 'key2' => 2);
现在我想按值的降序对数组进行排序。所以我尝试了以下操作
arsort($arr);
print_r($arr);
输出
Array(
[key3] => 3
[key2] => 2
[key1] => 1
)
但是当我尝试以下操作时,我得到的输出是 1
print_r(arsort($arr));
既然我正在对数组进行排序,然后在两种情况下都输出,为什么它给我不同的输出?
最佳答案
why its giving me different outputs?
bool arsort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
This function sorts an array such that array indices maintain their correlation with the array elements they are associated with.
Returns TRUE on success or FALSE on failure.
它使用对数组的引用,对其进行排序,然后在第一种情况下输出排序后的数组。
在第二种情况下,您正在输出函数的结果 - 它返回 TRUE,表示排序成功。
关于PHP 数组排序和输出行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25156213/