PHP curl使用实例


Posted in PHP onJuly 02, 2015

概述

本博客的前面两篇文章:curl和libcurl简介以及PHP中使用curl对PHP中curl的使用做了简单介绍,但是PHP中curl的使用却并不简单,尤其是curl的各种配置项,本篇文章会讲解几个PHP的实例,以便大家更好的理解curl。

实例:抓取页面

使用curl抓取页面相对来说比较简单,但是这里有一点需要注意的是,curl默认会将抓取的页面直接输出到浏览器。然而,我们经常遇到的情况是获取抓取的内容,对内容做一定的处理之后再进行操作。因此,这里写出两种不同的情况。

直接输出到浏览器

<?php

 $url="www.baidu.com";

 $ch=curl_init();

 curl_setopt($ch,CURLOPT_URL,$url);

 curl_exec($ch);

 curl_close($ch);

?>

运行上面这段代码,我们会直接看到百度首页。

不直接输出到浏览器

如果我们不想让curl抓取的内容直接输出到浏览器,那么就需要设置curl的“CURLOPT_RETURNTRANSFER”为true,这样curl抓取的内容会作为curl_exec()函数的返回值出现。

<?php

 $url="www.baidu.com";

 $content='';

 $ch=curl_init();

 curl_setopt($ch,CURLOPT_URL,$url);

 curl_setopt($ch, CURLOPT_RETURNTRANSFER,TRUE);

 /*

  *根据手册来看,好像PHP5.1.3以前的版本还需要配合CURLOPT_BINARYTRANSFER一起使用,

  *但是5.1.3以后的版本中,该配置项已经被废弃了。

  */

 //curl_setopt($ch, CURLOPT_BINARYTRANSFER,TRUE);

 $content=curl_exec($ch);

 var_dump($content);

 curl_close($ch);

?>

运行代码,我们可以看到页面输出了获取的网页源码。
PHP 相关文章推荐
实现 win2003 下 mysql 数据库每天自动备份
Dec 06 PHP
通俗易懂的php防注入代码
Apr 07 PHP
php防止sql注入代码实例
Dec 18 PHP
PHP封装的一个支持HTML、JS、PHP重定向的多功能跳转函数
Jun 19 PHP
PHP实现的简单mock json脚本分享
Feb 10 PHP
smarty模板引擎基础知识入门
Mar 30 PHP
Symfony2 session用法实例分析
Feb 04 PHP
PHP中ID设置自增后不连续的原因分析及解决办法
Aug 21 PHP
浅谈php fopen下载远程文件的函数
Nov 18 PHP
php mysql PDO 查询操作的实例详解
Sep 23 PHP
Ajax请求PHP后台接口返回信息的实例代码
Aug 21 PHP
laravel model 两表联查示例
Oct 24 PHP
PHP中使用curl入门教程
Jul 02 #PHP
Smarty最简单实现列表奇偶变色的方法
Jul 01 #PHP
PHP中的常见魔术方法功能作用及用法实例
Jul 01 #PHP
PHP获取文件夹大小函数用法实例
Jul 01 #PHP
Thinkphp模板标签if和eq的区别和比较实例分析
Jul 01 #PHP
ThinkPHP V2.2说明文档没有说明的那些事实例小结
Jul 01 #PHP
PHP判断是否连接上网络的方法
Jul 01 #PHP
You might like
对象失去焦点时自己动提交数据的实现代码
2012/11/06 PHP
PHP中对各种加密算法、Hash算法的速度测试对比代码
2014/07/08 PHP
基于jquery的让textarea自适应高度的插件
2010/08/03 Javascript
window.location.hash 使用说明
2010/11/08 Javascript
IE下通过a实现location.href 获取referer的值
2014/09/04 Javascript
Javascript基础教程之数据类型 (数值 Number)
2015/01/18 Javascript
在父页面得到zTree已选中的节点的方法
2015/02/12 Javascript
AngularJS ng-app 指令实例详解
2016/07/30 Javascript
AngularJS基础 ng-if 指令用法
2016/08/01 Javascript
Angular的模块化(代码分享)
2016/12/26 Javascript
详解vue.js2.0父组件点击触发子组件方法
2017/05/10 Javascript
JS数组操作中的经典算法实例讲解
2017/07/26 Javascript
thinkjs 文件上传功能实例代码
2017/11/08 Javascript
Vue-router 中hash模式和history模式的区别
2018/07/24 Javascript
移动端滑动切换组件封装 vue-swiper-router实例详解
2018/11/25 Javascript
layer.js open 隐藏滚动条的例子
2019/09/05 Javascript
JS代码实现页面切换效果
2021/01/10 Javascript
[02:51]DOTA2战队出征照拍摄花絮 TI3明星化身时尚男模
2013/07/22 DOTA
Python实现处理管道的方法
2015/06/04 Python
socket + select 完成伪并发操作的实例
2017/08/15 Python
Python实现动态添加属性和方法操作示例
2018/07/25 Python
python 使用plt画图,去除图片四周的白边方法
2019/07/09 Python
500行代码使用python写个微信小游戏飞机大战游戏
2019/10/16 Python
Python3+Selenium+Chrome实现自动填写WPS表单
2020/02/12 Python
Python使用OpenPyXL处理Excel表格
2020/07/02 Python
美国乡村商店:Plow & Hearth
2016/09/12 全球购物
伊利莎白雅顿官网:Elizabeth Arden
2016/10/10 全球购物
英国专业美容产品在线:Mylee(从指甲到脱毛)
2020/07/06 全球购物
2014学校庆三八妇女节活动总结
2014/03/01 职场文书
电子商务专业求职信
2014/03/08 职场文书
公务员保密承诺书
2014/03/27 职场文书
关于读书的演讲稿
2014/05/07 职场文书
普通党员对照检查材料
2014/08/28 职场文书
励志语录:只有自己足够强大,才能不被别人践踏
2020/01/09 职场文书
一行代码python实现文件共享服务器
2021/04/22 Python
Spring Boot优化后启动速度快到飞起技巧示例
2022/07/23 Java/Android