2015-05-28 38 views
-1
public function actionIndex() { 
    $sales = Sale::model()->findAll(); 
    $news = News::model()->findAll(); 

    $merged = CMap::mergeArray($sales, $news); 

    $this->render('index', array(
     'merged ' => $merged 
    )); 
} 

如何对任何字段(例如创建的字段)合并的$进行排序?在YII中对合并数组进行排序

+2

这是非常不好做这样的事情。你为什么想这样做?你不能只加入表格吗?为什么你使用AR来合并数组对象。 – ineersa

+0

谢谢你的回答。我如何加入表格? – Bennington

回答

0

想一想使用join。但是你可以用这样的方式(我不知道你的条件):

$union = Yii::app()->db->createCommand() 
     ->select('created') 
     ->from(Sale::model()->tableName()) 
     ->order('created ASC') 
     ->getText(); 

$command = Yii::app()->db->createCommand() 
     ->select('created') 
     ->from(News::model()->tableName()) 
     ->union($union) 
     ->order('created ASC'); 

echo '<pre>'; 
print_r($command->queryAll()); 
echo '</pre>'; 
die(); 
//or 
$dataReader = $command->query(); 
foreach($dataReader as $row) { ... } 

UNION

JOIN