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 相关文章推荐
使用PHP的日期与时间函数技巧
Apr 24 PHP
PHP 时间日期操作实战
Aug 26 PHP
file_get_contents(&quot;php://input&quot;, &quot;r&quot;)实例介绍
Jul 01 PHP
php计算数组不为空元素个数的方法
Jan 27 PHP
php使用curl出现Expect:100-continue解决方法
Mar 03 PHP
如何在旧的PHP系统中使用PHP 5.3之后的库
Dec 02 PHP
PHP微信公众号开发之微信红包实现方法分析
Jul 14 PHP
PHP获取二叉树镜像的方法
Jan 17 PHP
PHP设计模式之工厂模式定义与用法详解
Apr 03 PHP
php中的buffer缓冲区用法分析
May 31 PHP
apache集成php7.3.5的详细步骤
Jun 20 PHP
php实现简单的守护进程创建、开启与关闭操作
Aug 13 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
一个取得文件扩展名的函数
2006/10/09 PHP
新安装的MySQL数据库需要注意的安全知识
2008/07/30 PHP
PHP COOKIE设置为浏览器进程
2009/06/21 PHP
php实现改变图片直接打开为下载的方法
2015/04/14 PHP
php表单处理操作
2017/11/16 PHP
PHP调用微博接口实现微博登录的方法示例
2018/09/22 PHP
php生成随机数/生成随机字符串的方法小结【5种方法】
2020/05/27 PHP
js 操作css实现代码
2009/06/11 Javascript
浅析jQuery的链式调用之each函数
2010/12/03 Javascript
jquery随机展示头像代码
2011/12/21 Javascript
JavaScript回调(callback)函数概念自我理解及示例
2013/07/04 Javascript
只需一行代码,轻松实现一个在线编辑器
2013/11/12 Javascript
js遍历子节点子元素附属性及方法
2014/08/19 Javascript
使用jQuery简单实现模拟浏览器搜索功能
2014/12/21 Javascript
BootStrap入门教程(一)之可视化布局
2016/09/19 Javascript
分享javascript、jquery实用代码段
2016/10/20 Javascript
详解jQuery事件
2017/01/13 Javascript
原JS实现banner图的常用功能
2017/06/12 Javascript
Vue.js 中的 v-show 指令及用法详解
2018/11/19 Javascript
node实现生成带参数的小程序二维码并保存到本地功能示例
2018/12/05 Javascript
JS中的算法与数据结构之队列(Queue)实例详解
2019/08/20 Javascript
微信小程序表单验证WxValidate的使用
2019/11/27 Javascript
[34:47]完美世界DOTA2联赛PWL S2 Magma vs LBZS 第一场 11.18
2020/11/18 DOTA
python每次处理固定个数的字符的方法总结
2013/01/29 Python
使用Python将数组的元素导出到变量中(unpacking)
2016/10/27 Python
Python+tkinter使用80行代码实现一个计算器实例
2018/01/16 Python
Selenium chrome配置代理Python版的方法
2018/11/29 Python
详解Django定时任务模块设计与实践
2019/07/24 Python
好药师网上药店:安全合法的网上药品零售药房
2017/02/15 全球购物
lookfantastic荷兰:在线购买奢华护肤、护发和化妆品
2018/11/27 全球购物
理肤泉英国官网:La Roche-Posay英国
2019/01/14 全球购物
Cecil Mode法国在线商店:女性时尚
2021/01/08 全球购物
门卫班长岗位职责
2013/12/15 职场文书
乡领导班子四风问题对照检查材料
2014/09/25 职场文书
社区敬老月活动总结
2015/05/07 职场文书
vue实现列表垂直无缝滚动
2022/04/08 Vue.js