用php获取远程图片并把它保存到本地的代码


Posted in PHP onApril 07, 2008

<?php
function GrabImage($url,$filename="") {
  if($url==""):return false;endif;

  if($filename=="") {
    $ext=strrchr($url,".");
    if($ext!=".gif" && $ext!=".jpg"):return false;endif;
    $filename=date("dMYHis").$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;
}

$img=GrabImage("http://news.bbc.co.uk/images/_1978837_detector_ap100.jpg","");
if($img):echo '<pre><img src="'.$img.'"></pre>';else:echo "false";endif;   

 

?>

dedecms中的:

       if(!empty($saveremoteimg))
        {
                $body = stripslashes($body);
                $img_array = array();
                preg_match_all("/(src|SRC)=[\"|'| ]{0,}(http:\/\/(.*)\.(gif|jpg|jpeg|bmp|png))/isU",$body,$img_array);
                $img_array = array_unique($img_array[2]);
                set_time_limit(0);
                $imgUrl = $img_dir."/".strftime("%Y%m%d",time());
                $imgPath = $base_dir.$imgUrl;
                $milliSecond = strftime("%H%M%S",time());
                if(!is_dir($imgPath)) @mkdir($imgPath,0777);
                foreach($img_array as $key =>$value)
                {
                        $value = trim($value);
                        $get_file = @file_get_contents($value);
                        $rndFileName = $imgPath."/".$milliSecond.$key.".".substr($value,-3,3);
                        $fileurl = $imgUrl."/".$milliSecond.$key.".".substr($value,-3,3);
                        if($get_file)
                        {
                                $fp = @fopen($rndFileName,"w");
                                @fwrite($fp,$get_file);
                                @fclose($fp);
                        }
                        $body = ereg_replace($value,$fileurl,$body);
                }
                $body = addslashes($body);
        }

PHP 相关文章推荐
用PHP制作静态网站的模板框架(二)
Oct 09 PHP
简单的过滤字符串中的HTML标记
Dec 25 PHP
php中用foreach来操作数组的代码
Jul 17 PHP
php jquery 多文件上传简单实例
Dec 23 PHP
PHP函数getenv简介和使用实例
May 12 PHP
Laravel框架表单验证详解
Sep 04 PHP
PHP+jquery+ajax实现即时聊天功能实例
Dec 23 PHP
详解PHP序列化反序列化的方法
Oct 27 PHP
PHP抽象类基本用法示例
Dec 28 PHP
PHP+Ajax简单get验证操作示例
Mar 02 PHP
PHP7实现和CryptoJS的AES加密方式互通示例【AES-128-ECB加密】
Jun 08 PHP
Laravel 对某一列进行筛选然后求和sum()的例子
Oct 10 PHP
在php MYSQL中插入当前时间
Apr 06 #PHP
php读取30天之内的根据算法排序的代码
Apr 06 #PHP
PHP实现Socket服务器的代码
Apr 03 #PHP
mysql+php分页类(已测)
Mar 31 #PHP
PHP 数字左侧自动补0
Mar 31 #PHP
加强版phplib的DB类
Mar 31 #PHP
PHP截取汉字乱码问题解决方法mb_substr函数的应用
Mar 30 #PHP
You might like
phpnow php探针环境检测代码
2014/11/04 PHP
PHP通过微信跳转的Code参数获取用户的openid(关键代码)
2016/07/06 PHP
分享5个非常有用的Laravel Blade指令
2018/05/30 PHP
PHP封装XML和JSON格式数据接口操作示例
2019/03/06 PHP
JS模拟面向对象全解(一、类型及传递)
2011/07/13 Javascript
Document.location.href和.replace的区别示例介绍
2014/03/04 Javascript
JavaScript学习笔记之Cookie对象
2015/01/22 Javascript
JavaScript实现打字效果的方法
2015/07/10 Javascript
基于jQuery实现文本框只能输入数字(小数、整数)
2016/01/14 Javascript
js 实现一些跨浏览器的事件方法详解及实例
2016/10/27 Javascript
jQuery实现隔行变色的方法分析(对比原生JS)
2016/11/18 Javascript
jquery插件锦集【推荐】
2016/12/16 Javascript
用director.js实现前端路由使用实例
2017/01/27 Javascript
Vue.2.0.5过渡效果使用技巧
2017/03/16 Javascript
微信小程序分享功能onShareAppMessage(options)用法分析
2019/04/24 Javascript
详解vue 图片上传功能
2019/04/30 Javascript
nodejs开发一个最简单的web服务器实例讲解
2020/01/02 NodeJs
JavaScript实现串行请求的示例代码
2020/09/14 Javascript
JavaScript中layim之整合右键菜单的示例代码
2021/02/06 Javascript
[02:13] 完美世界DOTA2联赛PWL DAY5集锦
2020/11/03 DOTA
跟老齐学Python之永远强大的函数
2014/09/14 Python
Python的Flask框架中实现简单的登录功能的教程
2015/04/20 Python
pytorch 模型可视化的例子
2019/08/17 Python
tensorflow 实现从checkpoint中获取graph信息
2020/02/10 Python
Python基于爬虫实现全网搜索并下载音乐
2021/02/14 Python
美国男士内衣品牌:Tommy John
2017/12/22 全球购物
美国最大和最受信任的二手轮胎商店:Bestusedtires.com
2020/06/02 全球购物
DOM和JQuery对象有什么区别
2016/11/11 面试题
计算机专业毕业生求职信分享
2013/12/24 职场文书
七年级数学教学反思
2014/01/22 职场文书
运动会800米加油稿
2014/02/22 职场文书
长城导游词
2015/01/30 职场文书
客户付款通知书
2015/04/23 职场文书
uwsgi+nginx代理Django无法访问静态资源的解决
2021/05/10 Servers
详解Vue的options
2021/05/15 Vue.js
Python快速优雅的批量修改Word文档样式
2021/05/20 Python