Предположим, что URL-адрес изображения находится здесь:
http://sstatic.net/so/img/logo.png
Как загрузить его с помощью PHP?
$fp = fopen('logo.png', 'w'); fwrite($fp, file_get_contents('http://sstatic.net/so/img/logo.png')); fclose($fp);
Я бы просто сделал file_get_contents
и file_put_contents
$content = file_get_contents('http://sstatic.net/so/img/logo.png') file_put_contents('logo.png', $content);
следует отметить, что таким образом весь файл будет храниться в памяти, поэтому вы должны быть осторожны с memory_limit
. Если вам нужен метод, не помещая файл в память, он сделает это.
Вы можете использовать запрос на завивание:
public static function curlGet($url) { $ch = curl_init($url); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $content = curl_exec($ch); curl_close($ch); return $content; }
и написать ответ содержимого в файл
$fp = fopen('logo.png', 'w'); fwrite($fp, curlGet('http://sstatic.net/so/img/logo.png') ); fclose($fp);