Разработка на 1С-Битрикс Михаил Базаров

Удалить всех пользователей кроме администраторов в Битрикс

Вопросы и ответы по 1С-Битрикс, разборы реальных задач и обсуждение заметок блога. Задайте вопрос или помогите другим — все сообщения проходят модерацию.

Что бы удалить всех пользователей, кроме администраторов, в 1С-Битрикс
Можно воспользоваться методами
Код
CUser::GetList - получить всех пользователей
CUser::GetUserGroup - получить все группы, к которым принадлежит пользователь
CUser::Delete() - удалить пользователя
Полный пример:
Код
global $USER;
$rsUsers = CUser::GetList(
    ($by = "ID"), 
    ($order = "desc"), 
    false
    );
while ($arUser = $rsUsers->Fetch()) {
 $arGroups = CUser::GetUserGroup($arUser['ID']);
 if (!in_array(1 , $arGroups)) {
     CUser::Delete($arUser['ID']);
 }
}
Пояснения:
- Получили всех пользователей
- Внутри цикла получили группы, к которым принадлежит текущий пользователь
- Проверили, не находится ли он в группе 1 (админы). Просто, проверкой на наличие элемента в массиве групп.
- Удалил пользователя, если его нет в группе 1 (если элемент "1" отсуствует в массиве "arGroups")

Вариант- как удалить пользователей которые не делали заказов
в блоге
Форма ответов
 
Текст сообщения*
Перетащите файлы
Ничего не найдено
 
Михаил Базаров Индивидуальный предприниматель

Работаю официально, с заключением договора и предоставлением всех закрывающих документов.

Блог-note

Заметки по 1С-Битрикс