我写了一个简短的脚本来从URL上传图像,以免热链接到它们。如果图像扩展名不是.jpeg,则上传的图像会被破坏。我无法弄清楚如何保留文件扩展名或文件名,因此我不得不为它们添加时间戳和静态扩展名。
<?php
ini_set('user_agent', 'TEST/1.0 +http://127.0.0.1');
require_once('simple_html_dom.php');
// Create DOM from URL
$html = file_get_html('http://www.discogs.com/viewimages?release='.$_POST["album_id"]);
// Grab the coverart
$img = $html->find('.image_frame', 0);
$url = $img->src;
$file = file_get_contents($url);
$image = 'discogs_'.time().'_image.jpeg';
file_put_contents('/path/to/file/'.$image,$file);
echo $image;
?>
使用Baba的帮助更新了代码:http://codepad.org/3zH3B882
答案 0 :(得分:0)
您可以尝试将getimagesize
与image_type_to_extension
require_once('simple_html_dom.php');
$url = "http://www.discogs.com/viewimages?artist=Test+%282%29";
$html = file_get_html($url);
$img = $html->find('.image_frame', 0);
$info = getimagesize($img->src);
$extention = image_type_to_extension($info[2]);
$image = 'discogs_'.time().'_image' . $extention;
echo $image ;
输出
discogs_1348438953_image.gif