Jawaban:
Jika Anda telah allow_url_fopen
mengatur ke true
:
$url = 'http://example.com/image.php';
$img = '/my/folder/flower.gif';
file_put_contents($img, file_get_contents($url));
Gunakan saja CURL :
$ch = curl_init('http://example.com/image.php');
$fp = fopen('/my/folder/flower.gif', 'wb');
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
fclose($fp);
$_GET
variabel yang berisi URL gambar http://example.com/fetch-image.php?url=http://blabla.com/flower.jpg
. Dalam kasus contoh ini, Anda hanya bisa menelepon $_GET['url']
dalam script PHP Anda, seperti: $ch = curl_init($_GET['url']);
.
copy('http://example.com/image.php', 'local/folder/flower.jpg');
allow_url_fopen
).
$content = file_get_contents('http://example.com/image.php');
file_put_contents('/my/folder/flower.jpg', $content);
Ini dia, contohnya menyimpan gambar jarak jauh ke image.jpg.
function save_image($inPath,$outPath)
{ //Download images from remote server
$in= fopen($inPath, "rb");
$out= fopen($outPath, "wb");
while ($chunk = fread($in,8192))
{
fwrite($out, $chunk, 8192);
}
fclose($in);
fclose($out);
}
save_image('http://www.someimagesite.com/img.jpg','image.jpg');
Jawaban Vartec dengan CURL tidak berhasil untuk saya. Memang, dengan sedikit peningkatan karena masalah spesifik saya.
misalnya,
Ketika ada pengalihan di server (seperti ketika Anda mencoba untuk menyimpan gambar profil facebook), Anda perlu mengatur opsi berikut:
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
Solusi lengkap menjadi:
$ch = curl_init('http://example.com/image.php');
$fp = fopen('/my/folder/flower.gif', 'wb');
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_exec($ch);
curl_close($ch);
fclose($fp);
Saya tidak bisa mendapatkan solusi lain untuk bekerja, tetapi saya bisa menggunakan wget:
$tempDir = '/download/file/here';
$finalDir = '/keep/file/here';
$imageUrl = 'http://www.example.com/image.jpg';
exec("cd $tempDir && wget --quiet $imageUrl");
if (!file_exists("$tempDir/image.jpg")) {
throw new Exception('Failed while trying to download image');
}
if (rename("$tempDir/image.jpg", "$finalDir/new-image-name.jpg") === false) {
throw new Exception('Failed while trying to move image file from temp dir to final dir');
}
Lihat file()
Manual PHP :
$url = 'http://mixednews.ru/wp-content/uploads/2011/10/0ed9320413f3ba172471860e77b15587.jpg';
$img = 'miki.png';
$file = file($url);
$result = file_put_contents($img, $file)
instal wkhtmltoimage di server Anda kemudian gunakan paket saya packagist.org/packages/tohidhabiby/htmltoimage untuk menghasilkan gambar dari url target Anda.
file_put_contents
dll.