2

我有一个带有 id 的数组:

$ids = array(240, 12, 400);

我想按顺序获取这些对象$modx->getCollection('modResource');

我怎样才能做到这一点?

如果我这样做:

$res = $modx->getCollection('modResource', array(
    'id:IN' => $ids
));

这些盒子按 ASC 顺序排列,但我希望它们按以下顺序排列:240、12 400...

4

1 回答 1

2

试试这个:

$criteria = $modx->newQuery('modResource');
$criteria->sortby('FIELD(modResource.id, '.implode(',',$ids).' )', 'DESC');
$criteria->where(array(
    'id:IN' => $ids
));
$res = $modx->getCollection('modResource', $criteria);
于 2012-10-15T09:32:08.723 回答