文档章节

PHP获取url地址图片

丶KKdo
 丶KKdo
发布于 2016/08/03 20:42
字数 211
阅读 22
收藏 0
<?php
	function getImage($url,$save_dir='',$filename='',$type=0){ 
		if(trim($url)==''){ 
			return array('file_name'=>'','save_path'=>'','error'=>1); 
		} 
		if(trim($save_dir)==''){ 
			$save_dir='./weixinimage'; 
		} 
		if(trim($filename)==''){//保存文件名 
			$ext=strrchr($url,'.'); 
			if($ext!='.gif'&&$ext!='.jpg'){ 
				return array('file_name'=>'','save_path'=>'','error'=>3); 
			} 
			$filename=time().$ext; 
		} 
		if(0!==strrpos($save_dir,'/')){ 
			$save_dir.='/'; 
		} 
		//创建保存目录 
		if(!file_exists($save_dir)&&!mkdir($save_dir,0777,true)){ 
			return array('file_name'=>'','save_path'=>'','error'=>5); 
		} 
		//获取远程文件所采用的方法  
		if($type){ 
			$ch=curl_init(); 
			$timeout=5; 
			curl_setopt($ch,CURLOPT_URL,$url); 
			curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); 
			curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout); 
			$img=curl_exec($ch); 
			curl_close($ch); 
		}else{ 
			ob_start();  
			readfile($url); 
			$img=ob_get_contents();  
			ob_end_clean();  
		} 
		//$size=strlen($img); 
		//文件大小  
		$fp2=@fopen($save_dir.$filename,'a'); 
		fwrite($fp2,$img); 
		fclose($fp2); 
		unset($img,$url); 
		return array('file_name'=>$filename,'save_path'=>$save_dir.$filename,'error'=>0); 
	} 
	?> 

需要注意的是在php环境中需要开启curl扩展,然后调用以上方法,即可获取url地址对应的图片并保存到你设置的目录下.

© 著作权归作者所有

丶KKdo
粉丝 1
博文 24
码字总数 13683
作品 0
成都
程序员
私信 提问
php获取图片宽度高度的问题求教!!!!!!!

因为使用的是 一个开源CMS系统,数据内容输出都是用标签,例如我用的这个CMS系统,输出文章图片的URL的标签是: 也就是 {dr_thumb($t.thumb)} 这个图片URL地址输出标签。 因为用到了瀑布流特...

古柯
2015/06/28
737
6
如何用C解析一个网页获取相关信息.

我想用C/C++去解析一个网页,去获取相应的内容,比如文字/url/图片地址等 目前我使用的方案是用C访问一个php网页,php网页也是自己写的,用的phpquery的解析库感觉很好用. 现在想用纯C/C++写,但是...

PLeo
2011/11/16
5.4K
11
[转] PHP使用Gravatar API部分的翻译

这个日志作为自己翻译练习用,以此慢慢来提高自己的英文水平。如果发现行文不通或者难以理解,那么建议你查看原文,万万不能在我的翻译上瞎琢磨,误入歧途。 Developer Resources 开发者资源...

红薯
2010/11/08
1K
3
上传图片到远程服务器并返回图片地址到本地显示

本示例将演示一个简单的上传图片到远程服务器,然后生成图片路径后通过提交的回调路径返回给本地服务器,最后将图片地址显示在前端页面。 本项目应用三个文件,即前端选取图片的页面,然后提...

Corwien
2016/06/16
2K
0
php常用40个代码片段

在编写代码的时候有个神奇的工具总是好的!下面这里收集了 40+ PHP 代码片段,可以帮助你开发 PHP 项目。 这些 PHP 片段对于 PHP 初学者也非常有帮助,非常容易学习,让我们开始学习吧~ 1....

我心中有猛狗
2018/01/30
30
0

没有更多内容

加载失败,请刷新页面

加载更多

Java 文件类操作API与IO编程基础知识

阅读目录: https://www.w3cschool.cn/java/java-io-file.html Java 文件 Java 文件 Java 文件操作 Java 输入流 Java 输入流 Java 文件输入流 Java 缓冲输入流 Java 推回输入流 Java 数据输入...

boonya
27分钟前
3
0
SDKMAN推荐一个好

是在大多数基于Unix的系统上管理多个软件开发工具包的并行版本的工具。它提供了一个方便的命令行界面(CLI)和API来安装,切换,删除和列出sdk相关信息。以下是一些特性: By Developers, fo...

hotsmile
52分钟前
8
0
什么是 HDFS

是什么? HDFS 是基于 Java 的分布式文件系统,允许您在 Hadoop 集群中的多个节点上存储大量数据。 起源: 单机容量往往无法存储大量数据,需要跨机器存储。统一管理分布在集群上的文件系统称...

Garphy
55分钟前
5
0
一起来学Java8(四)——复合Lambda

在一起来学Java8(二)——Lambda表达式中我们学习了Lambda表达式的基本用法,现在来了解下复合Lambda。 Lambda表达式的的书写离不开函数式接口,复合Lambda的意思是在使用Lambda表达式实现函...

猿敲月下码
今天
11
0
debian10使用putty配置交换机console口

前言:Linux的推广普及,需要配合解决实际应用方能有成效! 最近强迫自己用linux进行实际工作,过程很痛苦,还好通过网络一一解决,感谢各位无私网友博客的帮助! 系统:debian10 桌面:xfc...

W_Lu
今天
12
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部