Php 帮助排序此数组

Php 帮助排序此数组,php,arrays,multidimensional-array,Php,Arrays,Multidimensional Array,因此,我希望通过“fk_page_id”升序对下面的多维数组进行排序。有人有什么建议吗。我认为usort()是我必须寻找的地方,但似乎我找不到任何具有我特定数组结构的人 Array ( [0] => Array ( [title] => subpage of subpage! [id] => 5 [long_title] => [fk_pag

因此,我希望通过“fk_page_id”升序对下面的多维数组进行排序。有人有什么建议吗。我认为usort()是我必须寻找的地方,但似乎我找不到任何具有我特定数组结构的人

Array
    (

    [0] => Array

        (
            [title] => subpage of subpage!
            [id] => 5
            [long_title] =>
            [fk_page_id] => 4                                
        )

    [1] => Array
        (
            [title] => about us subpage
            [id] => 4
            [long_title] => 
            [fk_page_id] => 2
        )

    [2] => Array
        (
            [title] => about us
            [id] => 2
            [long_title] => 
            [fk_page_id] => 1
        )

)
函数cmp($a,$b){
如果($a['fk\U页面\U id']=$b['fk\U页面\U id'])){
返回0;
}否则{
返回$a['fk_page_id']<$b['fk_page_id']?-1:1;
}
}
usort($yourray,'cmp');

如果您使用的是PHP5.3+:

define(ASC,1);
define(DESC,-1);

function colsort($array,$col,$order=ASC) {
    usort(
        $array,
        function($a,$b) use($col,$order) {
            return strcmp($a[$col],$b[$col])*$order;
        }
    );
    return $array;
}

colsort($x,'fk_page_id');

是否有一种方法可以动态执行此操作。。一个类似排序数组($array,$key,$direction)的函数;不过这确实满足了我的需要,谢谢!
define(ASC,1);
define(DESC,-1);

function colsort($array,$col,$order=ASC) {
    usort(
        $array,
        function($a,$b) use($col,$order) {
            return strcmp($a[$col],$b[$col])*$order;
        }
    );
    return $array;
}

colsort($x,'fk_page_id');