采集专用php基于CURL的HTTP类库php HTTP类库

本文介绍了一个基于CURL的PHP HTTP类库,用于高效地进行数据采集和请求操作。通过这个类库,开发者可以方便地管理HTTP请求,包括设置headers、POST数据等,提升了PHP在处理网络请求时的灵活性和便捷性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<?php
/**
 * 封装基于curl的HTTP类库
 *
 * @file    class_httplib.php
 * @author	qaulau@hotmail.coma
 * @date    2013-8-1
 */
class httplib{
	private $response;
	private $response_header;
	private $response_data;
	private $response_info;
	private $response_httpcode;
	private $timeout = 30;
	private $cookie = '';
	private $useragent = 'PHP-HttpLib-v1.0';
	private $request_header = array();
	private $starttime;
	private $request_proxy = array();
	private $request_method;
	public function __construct(){
		$this->starttime = self::_microtime();
		//能有效提高POST大于1M数据时的请求速度
		$this->set_header('Expect');
	}
	/**
	 * 设置cookie(可选)
	 * @param <array|string> $cookie
	 */
	public function set_cookie($cookie = ''){
		if (is_array($cookie)){
			$cookies = array();
			foreach ($cookie as $k => $v){
				$cookies[] = $k.'='.$v;
			}
			$this->cookie .= implode('; ', $cookies);
		}else{
			$this->cookie .= $cookie;
		}
	}
	/**
	 * 设置用户浏览器信息(可选)
	 * @param string $useragent : 浏览器代理信息
	 */
	public function set_useragent($useragent = ''){
		$this->useragent = $useragent;
	}
	/**
	 * 设置头部伪造IP(可选),对某些依靠头部信息判断ip的网站有效
	 * @param string $ip : 需要伪造的ip
	 */
	public function set_forgeip($ip){
		$this->set_header('CLIENT-IP',$ip);
		$this->set_header('X-FORWARDED-FOR',$ip);
	}
	/**
	 * 添加请求头部信息
	 * @param string $k
	 * @param string $v
	 */
	public function set_header($k,$v = ''){
		if (!empty($k)){
			$this->request_header[] = $k.':'.$v;
		}
	}
	/**
	 * 设置超时时间(可选)
	 * @param int $sec
	 */
	public function set_timeout($sec){
		if($sec > ini_get('max_execution_time')) @set_time_limit($sec);
		$this->timeout = $sec;
	}
	/**
	 * 设置代理(可选),如对方限制了ip访问或需要隐藏真实ip
	 * @param string $host	:代理服务器(ip或者域名)
	 * @param int	 $port	:代理服务端口
	 * @param string $user	:用户名(如果有)
	 * @param string $pass	:用户密码(如果有)
	 */
	public function set_proxy($host,$port = '',$user = '',$pass = ''){
		$this->reque
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值