Drupal → Как скачать файл на сервер

18.06.2011

Пример скачивания логотипа яндекса:

Способ 1:

$result = drupal_http_request('http://img.yandex.net/i/www/logo.png');
if (empty($result->error) && $result->data) {
  file_unmanaged_save_data($result->data, 'public://images/yandex-logo.png');
}

Способ 2:

system_retrieve_file('http://img.yandex.net/i/www/logo.png', 'public://images');

Способ 3 на чистом php.

Написанное актуально для
Drupal 7
Похожие записи

Комментарии

супер! мне понадобилось написать минимум 10 строк кода чтобы сделать это в семерке.

кстати, заметили проблему с назначением дефолтным изображениям поля Image статуса temporary ? это реальный баг

все работает, только после
file_unmanaged_save_data($result->data, 'public://images/yandex-logo.png') точку-с-запятой пропустили. не знаю специально или нет

и надо в папке files еще папку images создать

Игорь
18.12.2013, 09:47

Дополню
file_unmanaged_save_data($data, $destination = NULL, $replace = FILE_EXISTS_RENAME)
идентична file_save_data за исключением того, что не вызываются хуки и ничего о файле в таблицы базы не пишется.

Гость
16.12.2015, 11:01

У меня функция system_retrieve_file('http://img.yandex.net/i/www/logo.png', 'public://images'); не работает не один метод, компьютер долго думает и страница остается пустой....

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