На выходе получаем массив типа
PERSONAL_PHOTO (массив описывающий фотографию в Bitrix Framework).
Функция реализована на Bitrix Framework, функция находится в свободном доступе на Github:
https://github.com/IgorMan2005/bitrix_personal_photo
Рекомендации по использованию:
1. Добавьте функцию в файл
/local/php_interface/include/functions.php
2. Убедитесь, что у скрипта есть права на обновление пользователей
Пример использования функции createPersonalPhotoFromUrl($imageUrl):
$imageUrl = 'https://best-itpro.ru/images/createPersonalPhotoFromUrl_avatar.png';
$personalPhoto = createPersonalPhotoFromUrl($imageUrl);
if ($personalPhoto) {
// Обновляем фото пользователя
$user = new CUser;
$user->Update($USER->GetID(), ['PERSONAL_PHOTO' => $personalPhoto]);
// Или используем для других целей
echo "Фото успешно загружено: " . $personalPhoto['name'];
} else {
echo "Ошибка загрузки фото";
}