對于PHP程序員而言,二維數(shù)組的使用十分普遍。在實(shí)際場景中,我們可能需要對數(shù)組的鍵值進(jìn)行排序。那么,如何通過PHP來完成這一操作呢?
首先,我們需要明確在PHP中,可以通過函數(shù)array_multisort()來對二維數(shù)組鍵值進(jìn)行排序。下面通過一個(gè)簡單的示例來介紹該函數(shù)的使用方法。
假設(shè)我們有一個(gè)二維數(shù)組$students,每個(gè)學(xué)生擁有姓名(name)和年齡(age)兩個(gè)鍵值,數(shù)據(jù)如下:
$students = array( array("name" => "張三", "age" => 20), array("name" => "李四", "age" => 19), array("name" => "王五", "age" => 22), );現(xiàn)在,我們需要按照學(xué)生年齡(age)從小到大進(jìn)行排序。代碼實(shí)現(xiàn)如下:
// 獲取學(xué)生年齡(age)數(shù)組 foreach ($students as $key => $row) { $age[$key] = $row['age']; } // 對學(xué)生年齡(age)進(jìn)行排序 array_multisort($age, SORT_ASC, $students); // 輸出排序結(jié)果 foreach ($students as $key => $row) { echo "姓名:" . $row['name'] . ",年齡:" . $row['age'] . "<br>"; }運(yùn)行該代碼后,輸出結(jié)果如下:
姓名:李四,年齡:19
姓名:張三,年齡:20
姓名:王五,年齡:22
// 獲取學(xué)生年齡(age)和姓名(name)數(shù)組 foreach ($students as $key => $row) { $age[$key] = $row['age']; $name[$key] = $row['name']; } // 對學(xué)生年齡(age)和姓名(name)進(jìn)行排序 array_multisort($age, SORT_ASC, $name, SORT_ASC, $students); // 輸出排序結(jié)果 foreach ($students as $key => $row) { echo "姓名:" . $row['name'] . ",年齡:" . $row['age'] . "<br>"; }運(yùn)行該代碼后,輸出結(jié)果如下:
姓名:李四,年齡:19
姓名:張三,年齡:20
姓名:王五,年齡:22