PHP сохранить файл изображения

Возможный дубликат:
Сохранение изображения с PHP-URL с помощью PHP

Привет, у меня есть изображение как ссылка на URL-адрес с сайта стороннего веб-сайта (IE http://images.websnapr.com/?size=size&key=Y64Q44QLt12u&url=http://google.com ). Что я хотел бы сделать, это запустите сценарий, который берет изображение и сохраняет его в каталоге на моем сервере, используя php. Может ли кто-нибудь указать мне правильный способ сделать это, пожалуйста? я бы использовал File Write?

Не нужно создавать ресурс GD, как это предлагал кто-то другой.

$input = 'http://images.websnapr.com/?size=size&key=Y64Q44QLt12u&url=http://google.com'; $output = 'google.com.jpg'; file_put_contents($output, file_get_contents($input)); 

Примечание. Это решение работает только в том случае, если вы настроите разрешение на доступ к URL-адресам. Если вышеприведенное решение не работает, вам нужно будет использовать cURL.

Примечание: вы должны использовать принятый ответ, если это возможно. Это лучше, чем мое.

С GD-библиотекой это довольно просто.

Он построен, как правило, у вас, вероятно, есть его (используйте phpinfo() для проверки)

 $image = imagecreatefromjpeg("http://images.websnapr.com/?size=size&key=Y64Q44QLt12u&url=http://google.com"); imagejpeg($image, "folder/file.jpg"); 

Вышеуказанный ответ лучше (быстрее) для большинства ситуаций, но с GD вы также можете изменить его в некоторой форме (например, обрезка).

 $image = imagecreatefromjpeg("http://images.websnapr.com/?size=size&key=Y64Q44QLt12u&url=http://google.com"); imagecopy($image, $image, 0, 140, 0, 0, imagesx($image), imagesy($image)); imagejpeg($image, "folder/file.jpg"); 

Это работает, только если allow_url_fopen true (по умолчанию)