Bitrix24 (PHP): Получение мин. данных пользователя (по его ID)
Данная функция позволяет получить набор минимальных данных о конкретном пользователе по ID пользователя.
В случае успеха возвращается массив, содержащий:
- ID;
- LOGIN;
- FULL_NAME;
- EMAIL;
- NAME;
- LAST_NAME;
- SECOND_NAME;
- JTITLE;
- AVATAR.
В поле "FULL_NAME" - будет указана либо составная строка (из фамилии, имени и отчества, при наличии значений), либо логин (он всегда есть).
"JTITLE" - поле для наименование должности пользователя.
"AVATAR" - поле для относительного пути к аватару пользователя.
function getUserBaseData($userId) {
$userId = intval($userId);
if ($userId <= 0) return null;
$arUser = CUser::GetByID($userId)->Fetch();
if (!$arUser) return null;
$fullNameParts = [];
if ($arUser["LAST_NAME"]) $fullNameParts[] = $arUser["LAST_NAME"];
if ($arUser["NAME"]) $fullNameParts[] = $arUser["NAME"];
if ($arUser["SECOND_NAME"]) $fullNameParts[] = $arUser["SECOND_NAME"];
$fullName = !empty($fullNameParts) ? implode(' ', $fullNameParts) : $arUser["LOGIN"];
$avatarUrl = "";
if (!empty($arUser["PERSONAL_PHOTO"])) {
$imgId = intval($arUser["PERSONAL_PHOTO"]);
if ($imgId > 0) $avatarUrl = CFile::GetPath($imgId) ?: '';
}
return [
"ID"=> $userId,
"LOGIN"=> $arUser["LOGIN"],
"FULL_NAME"=> $fullName,
"EMAIL"=> $arUser["EMAIL"] ?? "",
"NAME"=> $arUser["NAME"] ?? "",
"LAST_NAME"=> $arUser["LAST_NAME"] ?? "",
"SECOND_NAME"=> $arUser["SECOND_NAME"] ?? "",
"JTITLE"=> $arUser["WORK_POSITION"] ?? "",
"AVATAR"=> $avatarUrl
];
}