php 采集远程网页图片并保存到本地
ob_start : 打开输出缓冲
readfile : 读入一个文件并写入到输出缓冲
返回从文件中读入的字节数。如果出错返回 FALSE 并且除非是以 @readfile() 形式调用,否则会显示错误信息。
ob_end_clean() : Clean (erase) the output buffer and turn off output buffering(清除输出缓冲)
<?php
//URL是远程的完整图片地址,不能为空, $filename 是另存为的图片名字
//默认把图片放在以此脚本相同的目录里
function GrabImage($url, $filename = "") {
//$url 为空则返回 false;
if ($url == "") {
return false;
}
$ext = strrchr($url, "."); //得到图片的扩展名
if ($ext != ".ico" && $ext != ".gif" && $ext != ".jpg" && $ext != ".bmp") {
echo "格式不支持!";
return false;
}
if ($filename == "") {
$filename = time() . "$ext";
} //以时间戳另起名
//开始捕捉
ob_start();
readfile($url);
$img = ob_get_contents();
ob_end_clean();
$size = strlen($img);
$fp2 = fopen($filename, "a");
fwrite($fp2, $img);
fclose($fp2);
return $filename;
}
//测试
GrabImage("http://www.phprm.com/favicon.ico", "as.ico");文章地址:http://www.phprm.com/code/7b935d5cbc2af164fd620437bd3984f0.html
转载随意^^请带上本文地址!