關於array_multisort($name,SORT_ASC,$age,SORT_DESC,$arr);的問題;
太山遍雨河润千里
太山遍雨河润千里 2018-02-22 19:46:03
0
1
1527

這個函數應該是

array_multisort(array1,sorting order,sorting type,array2,array3...)

所以先對$name排序,然後對$age排序,再對$arr排序。

最後回傳的結果用print_r($arr)表示,也就是只進行了$arr的排序。

並不是像老師說的那樣回到$arr。

array_multisort($name,SORT_ASC,$age,SORT_DESC);

這樣進行排序的結果,就是不保留原鍵值對應關係的排序,

print_r( $arr)在這種情況下的輸出是name正向排序,age反向排序的二維陣列。

太山遍雨河润千里
太山遍雨河润千里

全部回覆(1)
Rain

經過多次反覆調試發現array_multisort函數的$arr參數所起到的作用相當於一種把前面參數所做的排序改變追加到
$arr本體數組當中去,因為array_multisort函數是傳值調用,前面的排序操作就是對副本的操作,$arr參數相當於一種
再次賦值,保證了本體的改變。但也不能完全當成是再賦值操作,因為,當改變這個$arr參數為一個新的數組$newArr參數的時候
系統會報錯,由此可見,$arr參數所起到的作用類似於再賦值操作但又不是。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!