PHP cURL初始化和执行方法入门级代码


Posted in PHP onMay 28, 2015

这个是采集基础,最好熟悉一下

$ch = curl_init();
# 设定url和把结果返回,是否返回头部
curl_setopt($ch, CURLOPT_URL, 'http://www.baidu.com/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($this->ch, CURLOPT_HEADER, 1);

# cookie文件设定
curl_setopt($this->ch, CURLOPT_COOKIEJAR, $cookie_file);
curl_setopt($this->ch, CURLOPT_COOKIEFILE, $cookie_file);

# 额外头部
curl_setopt($this->ch, CURLOPT_HTTPHEADER, array('User-Agent: Mozilla/5.0'));

# 设定post
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $poststring);

# 连接、执行过期时间
curl_setopt($this->ch, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($this->ch, CURLOPT_TIMEOUT, 30);

# 是否跟随301 302
curl_setopt($this->ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($this->ch, CURLOPT_MAXREDIRS, 10);

# refer
curl_setopt($this->ch, CURLOPT_REFERER, $refer);

# http版本和端口重用设置
curl_setopt($this->ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($this->ch, CURLOPT_FORBID_REUSE, 1);

# 支持https
curl_setopt($this->ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($this->ch, CURLOPT_SSL_VERIFYHOST, 0);

# 如果需要进行毫秒超时,需要增加:
curl_setopt($this->ch, CURLOPT_NOSIGNAL, 1);

# 执行
$response = curl_exec($ch);
if(curl_errno($ch)){
  curl_error($ch);
  exit();
}
curl_close($ch);
PHP 相关文章推荐
PHP中的日期及时间
Nov 23 PHP
php利用cookie实现访问次数统计代码
May 19 PHP
php入门学习知识点二 PHP简单的分页过程与原理
Jul 14 PHP
php去除重复字的实现代码
Sep 16 PHP
Apache实现Web Server负载均衡详解(不考虑Session版)
Jul 05 PHP
php计算两个日期时间差(返回年、月、日)
Jun 19 PHP
PHP树-不需要递归的实现方法
Jun 21 PHP
php计算给定日期所在周的开始日期和结束日期示例
Feb 06 PHP
Yii 2.0自带的验证码使用经验分享
Jun 19 PHP
thinkphp3.2框架中where条件查询用法总结
Aug 13 PHP
php日志函数error_log用法实例分析
Sep 23 PHP
在laravel中实现将查询的对象转换为多维数组的函数
Oct 21 PHP
php支持中文字符串分割的函数
May 28 #PHP
typecho插件编写教程(五):核心代码
May 28 #PHP
php实现paypal 授权登录
May 28 #PHP
typecho插件编写教程(四):插件挂载
May 28 #PHP
PHP Opcache安装和配置方法介绍
May 28 #PHP
typecho插件编写教程(三):保存配置
May 28 #PHP
PHP通过API获取手机号码归属地
May 28 #PHP
You might like
php下保存远程图片到本地的办法
2010/08/08 PHP
php设计模式 Factory(工厂模式)
2011/06/26 PHP
php列出一个目录下的所有文件的代码
2012/10/09 PHP
关于mysql字符集设置了character_set_client=binary 在gbk情况下会出现表描述是乱码的情况
2013/01/06 PHP
详解PHP5.6.30与Apache2.4.x配置
2017/06/02 PHP
CSS+Table图文混排中实现文本自适应图片宽度(超简单+跨所有浏览器)
2009/02/14 Javascript
js中页面的重新加载(当前页面/上级页面)及frame或iframe元素引用介绍
2013/01/24 Javascript
js实现上传图片之上传前预览图片
2013/03/25 Javascript
javascript实现的平方米、亩、公顷单位换算小程序
2014/08/11 Javascript
sea.js常用的api简易文档
2016/11/15 Javascript
angularjs 实现带查找筛选功能的select下拉框实例
2017/01/11 Javascript
JavaScript模块详解
2017/12/18 Javascript
vue 2.0 购物车小球抛物线的示例代码
2018/02/01 Javascript
微信小程序中使用wxss加载图片并实现动画效果
2018/08/13 Javascript
使用Angular-CLI构建NPM包的方法
2018/09/07 Javascript
Python中字典和JSON互转操作实例
2015/01/19 Python
Python实现随机生成有效手机号码及身份证功能示例
2017/06/05 Python
python实现机械分词之逆向最大匹配算法代码示例
2017/12/13 Python
利用Python+Java调用Shell脚本时的死锁陷阱详解
2018/01/24 Python
详解python实现识别手写MNIST数字集的程序
2018/08/03 Python
利用python循环创建多个文件的方法
2018/10/25 Python
python获取服务器响应cookie的实例
2018/12/28 Python
Python 从一个文件中调用另一个文件的类方法
2019/01/10 Python
华为校园招聘上机笔试题 扑克牌大小(python)
2020/04/22 Python
Python代码执行时间测量模块timeit用法解析
2020/07/01 Python
python3.8.3安装教程及环境配置的详细教程(64-bit)
2020/11/28 Python
深入理解css中vertical-align属性
2017/04/18 HTML / CSS
阿迪达斯越南官网:adidas越南
2020/07/19 全球购物
团工委书记自荐书范文
2013/12/17 职场文书
军训自我鉴定100字
2014/02/13 职场文书
市场营销专业毕业生求职信
2014/03/26 职场文书
企业授权委托书范本
2014/04/02 职场文书
2015年骨干教师工作总结
2015/05/26 职场文书
学习经验交流会演讲稿
2015/11/02 职场文书
标会主持词应该怎么写?
2019/08/15 职场文书
python如何将mat文件转为png
2022/07/15 Python