0

我在多维数组上苦苦挣扎......我已经合并到数组中,我应该为它们分配一个新值,该值应该用作键:

$content = array();
$content[0]['text'] = 'xxxxx';
$content[0]['order']=1

$content[1]['text'] = 'yyyy';
$content[1]['order']=3

$content[2]['text'] = 'yyyyddd';
$content[2]['order']=2

我需要按 content['order'] 值重新排序这个数组,我在这里挣扎。

拜托,我真的需要帮助。

4

2 回答 2

2

尝试使用usort

function sort_orders($a, $b) {
    if($a['order'] == $b['order']) 
    {
        return 0;
    }
    return ($a['order'] < $b['order']) ? -1 : 1;
}

usort($content, "sort_orders");
于 2012-10-08T08:47:50.903 回答
1

您可以使用usort()和比较函数来完成,如下所示:

function cmp($a, $b) {
    if ($a['order'] == $b['order']) {
        return 0;
    }
    return ($a['order'] < $b['order']) ? -1 : 1;
}

usort($content, 'cmp');
于 2012-10-08T08:49:49.920 回答