php curl get 下载远程zip文件保存在本地例子

目前只知道用php下载图片,但是对于6M这样大小的zip文件就不知道怎么下载了,用相同的代码似乎会下载不全,新学PHP编程,请大家指教!... 目前只知道用php 下载图片,但是对于6M这样大小的zip文件就不知道怎么下载了,用相同的代码似乎会下载不全,新学PHP编程,请大家指教! 展开
 我来答
吼怕粒出完美18f97
2015-02-05 · TA获得超过421个赞
知道小有建树答主
回答量:486
采纳率:0%
帮助的人:98.2万
展开全部
<?php

if($_POST['submit']){
$url=$_POST['url']; //取得提交过来的地址http://hu60.cn/wap/0wap/addown.php/fetion_sms.zip
$url=urldecode($url);
$fname=basename("$url"); //返回路径中的文件名部分 fetion_sms.zip
$str_name=pathinfo($fname); //以数组的形式返回文件路径的信息
$extname=strtolower($str_name['extension']); //把扩展名转换成小写
//$uptypes=explode(",",$forum_upload); //取得可以上传的文件格式
//$size=getFileSize($url);

$time=date("Ymd",time());

$upload_dir="./upload/";//上传的路径
$file_name=$time.rand(1000,9999).'.'.$fname;
$dir=$upload_dir.$file_name;//创建上传目录

//判断目录是否存在 不存在则创建
if(!file_exists($upload_dir)){
mkdir($upload_dir,0777,true);
}

$contents=curl_download($url,$dir);

if($contents){
echo "下载成功";
}else{
echo "下载失败";
}

}

function curl_download($url, $dir) {
$ch = curl_init($url);
$fp = fopen($dir, "wb");
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
$res=curl_exec($ch);
curl_close($ch);
fclose($fp);
return $res;
}

?>
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>远程下载文件</title>
<form name="upform" method="post" action="" enctype='multipart/form-data'>
<input name='url' type='text' size='20'/>
<input type='submit' name='submit' value='远程下载'/>
</form>
</body>
</html>
更多追问追答
追问
运行之后没有显示下载成功或失败,应该是没运行成功吧,不知道哪里出了问题。
追答
你看有文件下载成功没。
JovenShao
2015-02-05 · TA获得超过514个赞
知道小有建树答主
回答量:1161
采纳率:80%
帮助的人:615万
展开全部
可以调用系统的下载命令:wget
exec()
更多追问追答
追问
我是Mac电脑Unix系统,没有wget命令,用curl应该也可以下,在命令行可以运行,但是不知道怎么写成PHP程序。。。
追答
$cmd = 'curl "http://url.com/xxx"';//这里完全是系统命令
exec($cmd, $output, $return);// $output参数是接受执行完系统命令的返回值。$return是执行状态
if($return == 0){
    var_dump($output[0]);
}else{
    // error
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一个小美人儿
2015-02-05 · TA获得超过226个赞
知道小有建树答主
回答量:182
采纳率:50%
帮助的人:83.3万
展开全部
获得图片路径之后,直接根据路径写下载方法就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式