PHP的column函數是一種非常實用的函數。它允許我們從關聯數組(同時也適用于對象)中僅取回所需的一列。除此之外,它還支持對所取的列進行排序和去重,提供了更為方便的數據操作方式。
例如,我們有如下一個關聯數組:
$users = [ ['name' =>'Tom', 'age' =>25, 'gender' =>'male'], ['name' =>'Lucy', 'age' =>22, 'gender' =>'female'], ['name' =>'Kevin', 'age' =>32, 'gender' =>'male'], ];如果我們只需要獲取其中所有的姓名,我們可以使用column函數:
$names = array_column($users, 'name');這樣,$names將會是一個僅包含姓名的簡單數組。 另外,我們也可以使用column函數獲取其他的列,比如年齡和性別:
$ages = array_column($users, 'age'); $genders = array_column($users, 'gender');這樣,$ages和$genders分別將會是僅包含對應列的簡單數組。這種方法避免了使用循環逐個獲取所需列的煩瑣操作。 另外,column函數還支持對所取的列進行排序和去重。如果我們需要對年齡進行升序排序,可以這樣使用:
$ages = array_column($users, 'age'); array_multisort($ages, SORT_ASC, $users);其中,array_multisort是用于多維數組排序的函數,可以按照指定的列進行排序。這樣,排序后的$users數組仍將包含所有的信息,但是按照年齡升序排列。 如果我們需要對性別進行去重,并且僅獲取去重后的性別信息,可以這樣使用:
$genders = array_column($users, 'gender'); $unique_genders = array_unique($genders);這樣,$unique_genders僅包含了不重復的性別信息。這種去重方式比使用循環進行去重更加方便和高效。 總之,PHP的column函數是一個非常實用的函數,可以方便地從關聯數組中獲取所需的一列,更加靈活和高效的操作數據。我們可以視情況選擇合適的參數進行排序和去重,從而實現更加靈活的操作。
上一篇collect php