Есть изображение
data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD//gA7Q1JFQVRPUjogZ2Qt.....
Есть ли какой-нибудь более красивый способ получить mime тип файла(из коробки), а не разбивать строку по частям? Пробую делать так
$fileinfo = new \finfo(FILEINFO_MIME_TYPE);
$fileinfo->buffer(base64_decode('data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAA....'));
Но он мне возвращает, что mime тип изображения "application/octet-stream".
base64_decode('data:image/jpeg;base64,...
Декодирует полную абракадабру, которая действительно "application/octet-stream". Чтобы вы получили настоящий тип для данных, нужно декодировать сами данные. Например, так:
$decoded = base64_decode(substr($str, strpos($str, ',') + 1));
В качестве оптимизации можно пробовать декодировать только первые сто байт от картинки, но тут могут быть неизвестные подводные камни.
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости