码迷,mamicode.com
首页 > Web开发 > 详细

PHP下载远程文件及获取文件内容

时间:2015-03-10 19:48:07      阅读:180      评论:0      收藏:0      [点我收藏+]

标签:php 下载远程文件 获取文件内容

/**
     * 获取远程文件的内容
     * @parma $url  URL
     * @return 获得内容
     * **/
    public static function getContent($url){
		$flag = 0;
		do {
			$hCurl = curl_init();
			curl_setopt($hCurl, CURLOPT_HEADER, 0);
			curl_setopt($hCurl, CURLOPT_RETURNTRANSFER, 1);
			curl_setopt($hCurl, CURLOPT_TIMEOUT, 120);
			curl_setopt($hCurl, CURLOPT_CONNECTTIMEOUT, 4);
			curl_setopt($hCurl, CURLOPT_URL, $url);
	
			$data = curl_exec($hCurl);
	
			if (curl_errno($hCurl)) {
				break;
			}
	
			$http_code = curl_getinfo($hCurl, CURLINFO_HTTP_CODE);
			if ($http_code >= 400) { //400 - 600 is server error
				break;
			}
			$flag = 1;
		} while (0);
		curl_close($hCurl);
	
		if ($flag) {
			return $data;
		} else {
			return false;
		}
	}
	/**
	 * 下载远程文件保存本地文件
	 * @parma $fileName 保存文件
	 * @parma $url  URL
     * @return 获得内容
	 * **/
	public static function getContentToFile($fileName, $url)
	{
		$out = fopen($fileName, ‘w‘);
		if (empty($out)) {
			return false;
		}
	
		$flag = 0;
		do {
			$hCurl = curl_init();
			curl_setopt($hCurl, CURLOPT_HEADER, 0);
			curl_setopt($hCurl, CURLOPT_RETURNTRANSFER, 1);
			curl_setopt($hCurl, CURLOPT_TIMEOUT, 120);
			curl_setopt($hCurl, CURLOPT_CONNECTTIMEOUT, 4);
			curl_setopt($hCurl, CURLOPT_FILE, $out);
			curl_setopt($hCurl, CURLOPT_URL, $url);
	
			$data = curl_exec($hCurl);
	
			if (curl_errno($hCurl)) {
				break;
			}
	
			$http_code = curl_getinfo($hCurl, CURLINFO_HTTP_CODE);
			if ($http_code >= 400) { //400 - 600 is server error
				break;
			}
			$flag = 1;
		} while (0);
	
		curl_close($hCurl);
		fclose($out);
	
		if ($flag) {
			return $data;
		} else {
			return false;
		}
	}


本文出自 “梦朝思夕” 博客,请务必保留此出处http://qiangmzsx.blog.51cto.com/2052549/1618903

PHP下载远程文件及获取文件内容

标签:php 下载远程文件 获取文件内容

原文地址:http://qiangmzsx.blog.51cto.com/2052549/1618903

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!