在codeigniter中对合并的对象值进行排序

时间:2017-12-15 05:16:28

标签: php codeigniter

我有三个要合并的对象值,如

$videos = $this->Blogmodel>all_video_posts_ByCategory($cat_id);
$texts = $this->Blogmodel->all_text_posts_ByCategory($cat_id);
$audio = $this->Blogmodel->all_audio_posts_ByCategory($cat_id);

$data['array'] = array_merge($videos, $texts, $audio);

但问题是值是逐个排序的..如何在合并时按日期排序??

1 个答案:

答案 0 :(得分:0)

您可以先合并数组,然后对最终数组进行排序。 您可能正在寻找多重排序功能。见下面的代码:

$data = array_qsort2($data['array'], 'posted_date', "ASC");

function array_qsort2 (&$array, $column=0, $order="ASC") {
    $oper = ($order == "ASC")?">":"<";
    if(!is_array($array)) return;
    usort($array, create_function('$a,$b',"return (\$a['$column'] $oper \$b['$column']);")); 
    return ($array);
}