На нашем сайте мы используем cookie для сбора информации технического характера и обрабатываем IP-адрес вашего местоположения. Продолжая использовать этот сайт, вы даете согласие на использование файлов cookies. Здесь вы можете узнать, как мы пользуемся файлами cookies.
Я согласен
логотип upread.ru

Извлекаем изображение из mp3 с помощью PHP

В одном моем сервисе можно вытащить картинку из mp3. В данном материале я покажу, как это делается с помощью PHP. Также, так как существует возможность загрузки файлов на сервер, то мы коснемся и вопроса безопасности.

Итак, нам требуется библиотека getID3(). Вот вам прямая ссылка на те файлы, которые требуются. Качаем, распаковываем. Подключаем библиотеку:

require_once('./lib/getid3/getid3.php');
Далее вот такой код:

$uploaddir = './file/';
$uploadfile = $uploaddir.basename($_FILES['uploadfile']['name']);
if($_FILES["uploadfile"]["type"]=="audio/mp3"){
if (copy($_FILES['uploadfile']['tmp_name'], $uploadfile))
{
$path="./file/".$_FILES['uploadfile']['name'];
$getID3 = new getID3;
$FileInfo = $getID3->analyze($path);
$im = ‘’; 
if(isset($FileInfo['comments']['picture'][0])){
$Image='data:'.$FileInfo['comments']['picture'][0]['image_mime'].';charset=utf-8;base64,'.base64_encode($FileInfo['comments']['picture'][0]['data']);
echo '<img src="'.$im.'" />'; 
 }
  else unlink($path="./lib/files/".$_FILES['uploadfile']['name']); 
}
}
В первых двух строках определяем переменную для каталога загружаемого файла, его имя. Далее, в третьей, проверяем, является ли на самом деле загруженный файл mp3. В четвертой строке копируем файл и если все в порядке – задаем ему новый путь. Самое интересное происходит в 11 строке – там мы залезаем в MIME и извлекаем оттуда картинку. Картинка будет в base64 – я уже писал об этом методе в одной из своих статей. В общем, и все. Если ничего не получилось, то на всякий случай удаляем наш файлик в 14 строке.

Если вас что-то интересует по теме данной заметки или по работе PHP вообще, то вы всегда можете написать мне на почту up777up@yandex.ru или связаться со мной в социальных сетях. Я не работаю бесплатно, но беру очень небольшие деньги за помощь; всегда можем поторговаться и придти к разумному компромиссу. Пишите.

слоник php



тегизаметки, php, mp3, загрузка файлов, безопасность





Сайдинг: технология, виды и достоинства
Разница между == и === в JavaScript


© upread.ru 2013-2018
При перепечатке активная ссылка на сайт обязательна.
Задать вопрос
письмо
Здравствуйте! Вы можете задать мне любой вопрос или оставить комментарий. Оставьте сообщение, и я отвечу на него в ближайшее время. Если не получается отправить сообщение через эту форму, то пишите на почу up777up@yandex.ru