#php #sql #silverstripe
#php #sql #silverstripe
Вопрос:
Предположим, у вас есть массив ключей
$key_list = array(3, 6, 2);
И вы хотите получить записи из определенной таблицы, используя эти ключи в качестве идентификаторов (ГДЕ ID = id_from_key_list)
Foo::get()->byIDs($key_list);
Это возвращает строки с идентификаторами, которые соответствуют строкам в $key_list
(3, 6 и 2), но не в таком порядке.
Как нам поддерживать тот же порядок при получении этих элементов?
Ответ №1:
Что вам может понадобиться сделать, так это запустить цикл foreah идентификаторов и поместить каждый объект Foo в ArrayList
$aFooList = ArrayList::create();
foreach ($key_list as $key_list_id){
$oFoo = Foo::get()->byID($key_list_id);
$aFooList->push($oFoo);
}
return $aFooList;