Devilz_1
@Devilz_1
Frontend-Developer

Как при получении списка пользователей, отсортировать их по пользовательскому полю?

Всем привет. Есть код, в котором я получаю полный список пользователей с их пользовательскими полями. Мне нужно отсортировать пользователей по пользовательскому полю с названием UF_RAITING, как это сделать, если первый параметр доп. поля не принимает?

$filter = array();
$arParams["SELECT"] = array( "UF_*" );
$rsUsers = CUser::GetList(($by="ID"), ($order="asc"), $filter, array("SELECT"=>array("UF_*")));

while ($arUser = $rsUsers->Fetch()):
   print_r($arUser);
endwhile;
  • Вопрос задан
  • 605 просмотров
Решения вопроса 1
В документации всё написано:

Массив для сортировки, имеющий вид by1=>order1[, by2=>order2 [, ..]], где by1, ... - поле сортировки, может принимать значения:
id - код группы;
section - код родительской группы;
name - название группы;
code - символьный код группы;
active - активности группы;
left_margin - левая граница;
depth_level - глубина вложенности (начинается с 1);
sort - индекс сортировки;
created - по времени создания группы;
created_by - по идентификатору создателя группы;
modified_by - по идентификатору пользователя изменившего группу;
element_cnt - количество элементов в группе, работает только если bIncCnt = true;
timestamp_x - по времени последнего изменения.
order1, ... - порядок сортировки, может принимать значения:
asc - по возрастанию;
desc - по убыванию.

Кроме того, сортировка возможна и по пользовательским свойствам UF_XXX.

Значение по умолчанию Array("SORT"=>"ASC") означает, что результат выборки будет отсортирован по возрастанию. Если задать пустой массив Array(), то результат отсортирован не будет
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы