php离线下载程序,php下载远程文件到服务器,模拟离线下载功能

1.如果服务器支持allow_url_fopen选项:

if ((boolean)ini_get('allow_url_fopen')){

$url = '';

$file = file_get_contents($url);

$fp = fopen(basename($url), 'wb');

fwrite($fp, $file);

fclose($fp);

}

2.如果服务器支持Curl组件:

if (function_exists('curl_init')){

$url = '';

$ch = curl_init($url);

$fp = fopen(basename($url), 'wb');

curl_setopt($ch, CURLOPT_FILE, $fp);

curl_exec($ch);

curl_close($ch);

fclose($fp);

}

3.如果服务器支持fsockopen函数

if (function_exists('fsockopen')){

$url = 'http://cn.wordpress.org/wordpress-3.7.1-zh_CN.zip';

$url_info = parse_url($url);

$host = $url_info['host'];

$path = $url_info['path'];

$fp = fsockopen($host, 80, $errno, $errstr, 30);

if (!$fp) {

echo "$errstr ($errno)
n";

} else {

$out = "GET ".$path." HTTP/1.1rn";

$out .= "Host: ".$host."rn";

$out .= "Connection: Closernrn";

fwrite($fp, $out);

$df = fopen(basename($path), 'w+');

$i = 0;

while(!feof($fp)){

$fs = fgets($fp);

if($i > 0){

fwrite($df, $fs);

}

if($fs == "rn"){

$i = 1;

}

}

fclose($df);

fclose($fp);

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值