使用 array_multisort 對多維數組排序


array_multisort() 函數對多個數組或多維數組進行排序。

用法詳看:http://www.w3school.com.cn/php/func_array_multisort.asp


例子:

把二維數組按name長度賦值給id,並重新排序。

$arr = array(
    array('id' => 0, 'name' => '123833'),
    array('id' => 0, 'name' => 'aaa'),
    array('id' => 0, 'name' => 'albabaababa'),
    array('id' => 0, 'name' => '12356'),
    array('id' => 0, 'name' => '123abc')
);
foreach($arr as $k=>&$v){    //此處引用賦值纔會改變原數組的值
    $v['id'] = strlen($v['name']);  
}
array_multisort($arr);   //對多維數組排序
echo "<pre>";
print_r($arr);
echo "</pre>";

此時數組變爲:

Array
(
    [0] => Array
        (
            [id] => 3
            [name] => aaa
        )
    [1] => Array
        (
            [id] => 5
            [name] => 12356
        )
    [2] => Array
        (
            [id] => 6
            [name] => 123833
        )
    [3] => Array
        (
            [id] => 6
            [name] => 123abc
        )
    [4] => Array
        (
            [id] => 11
            [name] => albabaababa
        )
)





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章