I am using a CDbCriteria with its own conditions, with & order clauses. However, the order i want to give to the elements in the array is way too complex to specify in the order clause.
The solution i have in mind consists of obtaining the active records with the defined criteria like this
$theModelsINeed = MyModel::model()->findAll($criteria);
and then rearrange the order from my php code. How can i do this? I mean, i know how to iterate through its elements, but i don´t know if it is possible to actually change them.
I have been looking into this link about populating active records, but it seems quite complicated and maybe someone could have some better advice.
Thanks
There is nothing special about Yii’s active records. The
findfamily of methods will return an array of objects, and you can sort this array like any other array in PHP.If you have complex sort criteria, this means that probably the best tool for this is
usort. Since you will be dealing with objects, your user-defined comparison functions will look something like this: