首页 / PHP / php curl下载文件
php curl下载文件
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php curl下载文件,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1839字,纯文字阅读大概需要3分钟。
内容图文
![php curl下载文件](/upload/InfoBanner/zyjiaocheng/626/368e5f3d25394f8e8c7ee4cd98f590e7.jpg)
<?php //$result=httpcopy('http://www.phpernote.com/image/logo.gif'); echo '<pre>';print_r($result); function httpcopy($url,$file='',$timeout=60){ $file=empty($file)?pathinfo($url,PATHINFO_BASENAME):$file; $dir=pathinfo($file,PATHINFO_DIRNAME); !is_dir($dir)&&@mkdir($dir,0755,true); $url=str_replace(' ',"%20",$url); $result=array('fileName'=>'','way'=>'','size'=>0,'spendTime'=>0); $startTime=explode(' ',microtime()); $startTime=(float)$startTime[0]+(float)$startTime[1]; if(function_exists('curl_init')){ $ch=curl_init(); curl_setopt($ch,CURLOPT_URL,$url); curl_setopt($ch,CURLOPT_TIMEOUT,$timeout); curl_setopt($ch,CURLOPT_RETURNTRANSFER,TRUE); $temp=curl_exec($ch); if(@file_put_contents($file,$temp)&&!curl_error($ch)){ $result['fileName']=$file; $result['way']='curl'; $result['size']=sprintf('%.3f',strlen($temp)/1024); } }else{ $opts=array( 'http'=>array( 'method'=>'GET', 'header'=>'', 'timeout'=>$timeout ) ); $context=stream_context_create($opts); if(@copy($url,$file,$context)){ $result['fileName']=$file; $result['way']='copy'; $result['size']=sprintf('%.3f',strlen($context)/1024); } } $endTime=explode(' ',microtime()); $endTime=(float)$endTime[0]+(float)$endTime[1]; $result['spendTime']=round($endTime-$startTime)*1000;//单位:毫秒 return $result; }
PHP CURL实现远程下载文件到本地,该函数返回结果包括下载耗用的时间,保存的文件名,以及使用的下载方式
str_replace(' ',"%20",$url); 这个是由于如果url有空格,会导致下载文件失败
另一个简单方法:
function upload_get_img($url, $target) {
$url = str_replace(' ',"%20",$url); $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $info = curl_exec($curl); curl_close($curl); $newFileName = $target;//保存的本地地址及文件名 $fp2 = @fopen($newFileName, "w"); fwrite($fp2, $info); fclose($fp2); return $newFileName;//返回新的文件路径及文件名 }
内容总结
以上是互联网集市为您收集整理的php curl下载文件全部内容,希望文章能够帮你解决php curl下载文件所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。