Документация для разработчиков

SetUserGroup

CUser::SetUserGroup(    int user_id,
   array groups
);

Метод устанавливает привязку пользователя user_id к группам groups. Привязка к группам сохраняется в базе данных, но не влияет на уже авторизованного посетителя user_id. Нестатический метод.

Параметры

Параметр Описание
user_id Идентификатор пользователя.
groups Массив со значениями идентификаторов групп пользователей.

См. также

Примеры использования

<?
// привязка пользователя с кодом 10 дополнительно к группе c кодом 5
$arGroups = CUser::GetUserGroup(10);
$arGroups[] = 5;
CUser::SetUserGroup(10, $arGroups);
?>

Если требуется изменить также период активности в группе, массив groups будет иметь вид:

$arGroups = array(
  array(
  'GROUP_ID' => 5,
  'DATE_ACTIVE_FROM'=>'01.02.2009',
  'DATE_ACTIVE_TO'=>'02.02.2009'
  ),
  array(
  'GROUP_ID' => 6,
  'DATE_ACTIVE_FROM'=>'01.03.2009',
  'DATE_ACTIVE_TO'=>'02.03.2009'
  )
);

Добавление группы "одной строкой" (где array(4,5,6) - массив добавляемых групп.):

CUser::SetUserGroup($userID, array_merge(CUser::GetUserGroup($userID), array(4,5,6)));


Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
0
Роман Шкабко
Если кто хочет добавлять группы с периодом активности, то $arGroups = CUser::GetUserGroup(10); не будет работать. Нужно вытащить все гурппы с периодом активности. Вот мой код
Код
$arGroups_db = CUser::GetUserGroupList( $user_id );

      while ($arGroup = $arGroups_db->Fetch()){
         $arGroups[] = $arGroup;
      }
      // $arGroups[] = 5;
      if($days) {
         $arGroups[] = array(
            'GROUP_ID' => 5,
              'DATE_ACTIVE_FROM'=>'01.10.2016',
              'DATE_ACTIVE_TO'=>'02.11.2016'
         );
      }
      

      // var_dump($arGroups);
      return CUser::SetUserGroup($user_id, $arGroups);

С уважением,
Роман с https://ru.flamix.software/
© «Битрикс», 2001-2019, «1С-Битрикс», 2019
Наверх