`
txf2004
  • 浏览: 7065309 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

PHP保存远程图片到本地的类

阅读更多
<iframe name="google_ads_frame" marginwidth="0" marginheight="0" src="http://googleads.g.doubleclick.net/pagead/ads?client=ca-pub-4490194096475053&amp;dt=1228587706843&amp;lmt=1228528468&amp;prev_slotnames=1891601125&amp;output=html&amp;slotname=3685991503&amp;correlator=1228587706812&amp;url=http%3A%2F%2Fwww.corange.cn%2Farchives%2F2008%2F10%2F1847.html&amp;ea=0&amp;ref=http%3A%2F%2Fwww.corange.cn%2Fhtml%2Fcorange__95.html&amp;frm=0&amp;ga_vid=704176619.1228587707&amp;ga_sid=1228587707&amp;ga_hid=1712630427&amp;flash=9.0.124.0&amp;u_h=768&amp;u_w=1024&amp;u_ah=738&amp;u_aw=1024&amp;u_cd=32&amp;u_tz=480&amp;u_java=true&amp;dtd=16" frameborder="0" width="300" scrolling="no" height="250" allowtransparency></iframe>
<?php

//
// Function: 获取远程图片并把它保存到本地
//
//
// 确定您有把文件写入本地服务器的权限
//
//
// 变量说明:
// $url 是远程图片的完整URL地址,不能为空。
// $filename 是可选变量: 如果为空,本地文件名将基于时间和日期
// 自动生成.

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保存远程图片到本地,保存远程地址的图片

    PHP下载远程图片到本地类

    在PHP编程中,有时我们需要从远程服务器下载图片资源并保存到本地服务器,这在构建一些需要展示网络图片的网站或应用时非常常见。本篇将详细介绍如何使用PHP实现这一功能,以及提供的"PHP下载远程图片到本地类"的...

    PHP下载远程图片到本地类.zip

    这个压缩包包含了一个名为"PHP下载远程图片到本地类.php"的文件,这是一个专门用于下载远程图片的PHP类库,它可以方便地抓取互联网上的图片并将其保存到我们的本地服务器。 首先,我们来看这个PHP类的基本结构。...

    PHP下载远程图片保存到本地类.zip

    这个“PHP下载远程图片保存到本地类”提供了一个高效的解决方案,它封装了整个过程,包括错误处理、超时控制以及路径管理等关键点。 首先,让我们了解类的基本结构。一个PHP类可能包含以下组件: 1. **构造函数**...

    fckeditor 远程图片保存到本地插件

    名称:FCKeditor 远程保存图片插件 作者:九天工作室(http://www.cn09.com) 口号:开源不是施舍,而是一种合作方式 下载:http://www.cn09.com/remository.html?func=select&id=2 插件介绍: 在FCKeditor中复制网页...

    DicsuzX3.4远程图片本地化

    远程图片本地化就是将这些远程图片自动抓取并保存到论坛服务器,使它们成为本地资源,这样可以避免因外部服务器问题导致的图片显示不正常。 本插件经过了测试和修改,确保在DicsuzX3.4系统上安装无误。开发者已经...

    PHP实现的一个保存远程文件到本地的函数分享

    最近遇到了PHP远程图片本地话的问题,查了查手册发现file_get_contents&#40;&#41;和file_put_contents()可以解决这个问题。思路很简单,将远程文件读入字符串中,然后按照规则写入指定目录,经测试此法可采集图片、...

    php远程图片本地化

    在PHP开发中,“php远程图片本地化”是一个常见的需求,主要目的是将网络上的远程图片下载到本地服务器,以便提高网站的加载速度,减少对外部资源的依赖,同时也有利于图片的管理和备份。以下是对这个主题的详细阐述...

    php远程图片本地化插件

    - 获取到图片数据后,插件将其保存在本地服务器的指定目录下,并生成一个本地URL。 - 最后,插件会将原始的远程图片URL替换为新的本地图片URL,使得用户在访问网站时加载的是本地存储的图片。 2. **实现方式**: ...

    php下载远程文件到本地存储的函数类.zip

    这个压缩包"php下载远程文件到本地存储的函数类.zip"提供了一个专门解决这个问题的函数类,它可以帮助开发者更方便、高效地处理此类任务。下面我们将详细讨论这个函数类的工作原理、使用方法以及可能涉及的相关知识...

    PHP下载远程图片并保存到本地方法总结

    在PHP中,下载远程图片并保存到本地是一个常见的任务,特别是在构建网站或处理网络数据时。下面我们将深入探讨几种不同的实现方法。 1. 获取远程文件大小及信息: 使用`fsockopen`函数来建立一个HTTP连接,并通过...

    php下保存远程图片到本地的办法

    在PHP编程中,有时我们需要自动化地保存网络上的远程图片到本地服务器,特别是在处理大量图片时。这不仅可以提高工作效率,还能方便地对图片进行批量处理或分析。本文将介绍如何使用PHP实现这一功能,并提供相关代码...

    最新远程图片本地化FOR-Discuz! X3.1版

    1. 图片抓取:通过编程方式,自动检测论坛内容中的外部图片链接,并将其保存到本地服务器。 2. 图片替换:抓取图片后,需要修改原始帖子中的图片链接,将其替换为本地服务器上的新地址。 3. 性能优化:为了提高...

    ECshop编辑器更换成百度编辑器UEditor,远程图片可本地化,附教程测试可用

    支持在线搜图并自动下载保存到本地以免远程图片失效; 好不容易编辑好的内容没有保存导致数据丢失怎么办?本地自动保存功能帮你忙; Ueditor编辑器相对fckeditor编辑器操作更方便,源码更简洁。编辑内容时,不会生成...

    php 远程图片保存到本地的函数类

    ### PHP远程图片保存到本地的函数类 在Web开发中,有时我们需要从远程服务器获取图片并将其保存到本地服务器上。这种操作对于构建内容聚合器、镜像网站或需要缓存远程资源的应用程序非常有用。下面详细介绍如何使用...

    FCK 保存远程图片

    "FCK 保存远程图片"这一主题涉及到的是FCKeditor的一个功能,即如何将互联网上的远程图片保存到本地服务器的特定文件夹中,以便在编辑的内容中正常显示这些图片,同时避免因远程图片源的不可用而导致的显示问题。...

    使用ThinkPHP自带的Http类下载远程图片到本地的实现代码

    如果查询结果为空,则会调用外部服务获取图片的远程URL,并将其保存到本地服务器上。如果本地已存在该图片信息,则直接返回本地图片的URL。整个过程中,使用try/catch语句块来处理可能发生的异常,确保程序的健壮性...

    php将远程图片保存到本地服务器的实现代码

    在PHP中,将远程图片保存到本地服务器是常见的需求,特别是在处理批量图片抓取或自动化数据备份时。本文将详细讲解如何使用PHP实现这一功能,同时提供相关代码示例。 首先,我们需要创建一个函数,该函数能够通过...

    php保存远程文件 可以用来下载东西

    这个标题“php保存远程文件 可以用来下载东西”表明我们要讨论的是如何利用PHP来下载并保存网络上的文件,如图片、ZIP和RAR压缩包等。描述中提到的“下载速度很快”暗示可能采用了高效的文件处理方法。 首先,我们...

Global site tag (gtag.js) - Google Analytics