Php 如果日期相等,数组\u多重排序将失败
我使用的是Php 如果日期相等,数组\u多重排序将失败,php,arrays,multidimensional-array,yii,array-multisort,Php,Arrays,Multidimensional Array,Yii,Array Multisort,我使用的是yii框架和CArrayDataProvider,因为我的数据提供程序包含3个表。但是如果我在这里使用Sort $sort = new CSort; $sort->defaultOrder = 'created DESC'; $dataProvidermain=new CArrayDataProvider($data, array( 'id'=>'user', 'sort' => $sor
yii
框架和CArrayDataProvider
,因为我的数据提供程序包含3个表。但是如果我在这里使用Sort
$sort = new CSort;
$sort->defaultOrder = 'created DESC';
$dataProvidermain=new CArrayDataProvider($data, array(
'id'=>'user',
'sort' => $sort,
'pagination'=>array(
'pageSize'=>20,
),
));
它正在抛出错误
致命错误:嵌套级别太深-递归依赖?在里面
/var/www/goalsurf/framework/web/CArrayDataProvider.php,第151行
调试之后,我知道当两个或更多元素的日期相等时,它会抛出这个错误。我有三个实体的日期相同。2016-02-06 10:10:51
。如果我更改了2条记录的日期,它就工作了。在过去的两天里试图解决这个问题。搜索谷歌,但没有解决方案
请帮帮我
更新
这是数组格式
[68] => Tasks Object
(
[taskmodel] => 1
[quickacent] => 15
[dailygoal] =>
[weeklygoal] =>
[dailygoal2] =>
[_new:CActiveRecord:private] =>
[_attributes:CActiveRecord:private] => Array
(
[id] => 563
[guid] => 650c7572-3fae-4f9a-a476-8de6a21c329e
[user_id] => 44
[deli_id] => 0
[branch_id] => 0
[main_goal_id] => 0
[title] => Buy Babycon Dress
[thumb_ext] =>
[description] =>
[ecv] =>
[isSpam] => 0
[displayorder] => 0
[created] => 2016-02-06 10:10:52
[modified] => 2016-02-06 10:10:52
)
)
)
更新2
我的$data
变量为
$dataProvider=new CActiveDataProvider('Goals', array('criteria' => $criteria,'pagination'=>false));
$dataProvider2=new CActiveDataProvider('Tasks', array('criteria' => $criteria2,'pagination'=>false));
$dataProvider3=new CActiveDataProvider('TasksDaily', array('criteria' => $criteria2,'pagination'=>false));
//echo "<pre>"; print_r($dataProvider2->getData()); die;
$data=array_merge($dataProvider->getData(),$dataProvider2->getData(),$dataProvider3->getData());
$dataProvider=new cactivedaptaprovider('Goals',array('criteria'=>$criteria,'pagination'=>false));
$dataProvider2=新的CActiveDataProvider('Tasks',array('criteria'=>$criteria2,'pagination'=>false));
$dataProvider3=新的CActiveDataProvider('tasksday',array('criteria'=>$criteria2,'pagination'=>false));
//回声“;打印($dataProvider2->getData());死亡
$data=array\u merge($dataProvider->getData(),$dataProvider2->getData(),$dataProvider3->getData());
试试:$sort->defaultOrder='created DESC,id ASC'
$sort
调用$sort
,这使得此$sort
递归,因此它会抛出该错误。也许可以为$sort
找到一些其他名称?我将变量名称从$sort
更改为$sortvariable
,但是没有任何更改您可以在问题中以数组格式发布数据$data的格式是什么。您能显示$data的查询吗