Скачиваем картинку при помощи file_get_contents

Для тех, кто не знаком с возможностями cURL, есть способ получить контент стороннего сайта стандартными средствами PHP. Но не забывайте, что для этого в настройках конфигурации Вашего веб-сервера должна быть включена опция «allow_url_fopen». Также может случиться так, что со стороны веб-сервера, откуда Вы собираетесь получить контент, может стоять защита и в результате выполнения скрипта Вам будет возвращаться пустая страница. Давайте на примере разберем, как можно скачать картинку со стороннего сайта на свой веб-сервер с помощью функции file_get_contents.

Как это работает?

Создайте каталог, в который будет производиться запись изображений, например img, установите на этот каталог права для записи (0755 или 0777). Создайте рядом с этим каталогом файл PHP и добавьте в него следующий код:

Разберем подробнее. Для начала в переменную $img_url мы задаем ссылку на изображение, которое хотим скачать. Далее получаем заголовки этой ссылки, и если нам возвращается контент, проверяем наличие кода ошибки, если код равен 200 (OK, т.е. такая страница существует), выполняем функцию сохранения изображения. Для этого передаем контент ссылки в переменную $image = file_get_contents($img_url); и сохраняем в наш каталог с указаннием именем файла file_put_contents(dirname(__FILE__).»/img/logo.gif», $image);

В качестве примера на наш сервер сохраняется изображение логотипа Google.

Также Вы можете скачать код скрипта из вложения в конце статьи

Полезность статьи

Оцените, на сколько полезной оказалась статья.
1 балл2 балла3 балла4 балла5 баллов
4,00 / 5 баллов
1 участников
Комментарии

Здесь еще никто не оставлял комментарии.

Добавить комментарий

* - поля обязательные для заполнения. E-mail не публикуется.