您好,登錄后才能下訂單哦!
這篇文章主要介紹“PHP二維數組的詳細介紹”,在日常操作中,相信很多人在PHP二維數組的詳細介紹問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”PHP二維數組的詳細介紹”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
PHP經過長時間的發展,很多用戶都很了解它了,上網收集了一些關于PHP二維數組的相關知識,這里和大家一起分享一下,PHP本身是有一個多維數組排序的函數的。
boolarray_multisort(array$ar1[,mixed$arg[,mixed$...[,array$...]]])
下面是手冊當中對于array_multisort函數的描述:
array_multisort()可以用來一次對多個數組進行排序,或者根據某一維或多維對多維數組進行排序。關聯(string)鍵名保持不變,但數字鍵名會被重新索引。輸入數組被當成一個表的列并以行來排序――這類似于SQL的ORDERBY子句的功能。***個數組是要排序的主要數組。數組中的行(值)比較為相同的話就按照下一個輸入數組中相應值的大小來排序,依此類推。從手冊中看到,PHP本身的多維排序,是按照***個數組進行排序,并且調整后面的順序。像這樣的數組:
array('id'=>array(1,3,2), 'data'=>array('a','c','b'))
只要按照id進行多維排序,就可以了。但是很多時候,我們構造出的PHP二維數組是這樣的:
array( array('id'=>1,'data'=>'a'), array('id'=>3,'data'=>'c'), array('id'=>2,'data'=>'b') );
數組的元素是按行排列的,需要按其中的一列進行排序。PHP好像也沒提供類似矩陣轉置的函數,所以不能直接使用array_multisort進行多維排序。不過只需要先把排序的列抽取出來,作為***個參數傳給array_multisort即可。
functionmulti_array_sort($multi_array,$sort_key,$sort=SORT_ASC){ if(is_array($multi_array)){ foreach($multi_arrayas$row_array){ if(is_array($row_array)){ $key_array[]=$row_array[$sort_key]; }else{ return-1; } } }else{ return-1; } array_multisort($key_array,$sort,$multi_array); return$multi_array; }
到此,關于“PHP二維數組的詳細介紹”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。