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+MSSQL分页的例子
Oct 09 PHP
深入理解PHP原理之Session Gc的一个小概率Notice
Apr 12 PHP
php遍历目录与文件夹的多种方法详解
Nov 14 PHP
php读取3389的脚本
May 06 PHP
Discuz7.2版的faq.php SQL注入漏洞分析
Aug 06 PHP
非常重要的php正则表达式详解
Jan 04 PHP
PHP通过CURL实现定时任务的图片抓取功能示例
Oct 03 PHP
PHP微信红包生成代码分享
Oct 06 PHP
PHP处理Ajax请求与Ajax跨域问题
Feb 13 PHP
PHP构造二叉树算法示例
Jun 21 PHP
Laravel框架使用Seeder实现自动填充数据功能
Jun 13 PHP
PHP扩展mcrypt实现的AES加密功能示例
Jan 29 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
来自PHP.NET的入门教程
2006/10/09 PHP
PHP实现更新中间关联表数据的两种方法
2014/09/01 PHP
php的mssql数据库连接类实例
2014/11/28 PHP
php利用fsockopen GET/POST提交表单及上传文件
2017/05/22 PHP
如何用javascript去掉字符串里的所有空格
2007/02/08 Javascript
根据地区不同显示时间的javascript代码
2007/08/13 Javascript
JavaScript类和继承 prototype属性
2010/09/03 Javascript
ie下jquery.getJSON的缓存问题的处理方法
2013/03/29 Javascript
Eclipse下jQuery文件报错出现错误提示红叉
2014/01/13 Javascript
巧用局部变量提升javascript性能
2014/02/24 Javascript
javascript移出节点removeChild()使用介绍
2014/04/03 Javascript
javascript实现动态模态绑定grid过程代码
2014/09/22 Javascript
jQuery中:last选择器用法实例
2014/12/30 Javascript
JavaScript的Date()方法使用详解
2015/06/09 Javascript
jquery实现的蓝色二级导航条效果代码
2015/08/24 Javascript
JS动态插入并立即执行回调函数的方法
2016/04/21 Javascript
微信小程序富文本渲染引擎的详解
2017/09/30 Javascript
layui获取多选框中的值方法
2018/08/15 Javascript
微信公众平台 客服接口发消息的实现代码(Java接口开发)
2019/04/17 Javascript
vue进入页面时不在顶部,检测滚动返回顶部按钮问题及解决方法
2019/10/30 Javascript
微信小程序连接服务器展示MQTT数据信息的实现
2020/07/14 Javascript
Vue Elenent实现表格相同数据列合并
2020/11/30 Vue.js
python实现用于测试网站访问速率的方法
2015/05/26 Python
Python搭建APNS苹果推送通知推送服务的相关模块使用指南
2016/06/02 Python
Python下载网络小说实例代码
2018/02/03 Python
使用python编写udp协议的ping程序方法
2018/04/22 Python
安装不同版本的tensorflow与models方法实现
2021/02/20 Python
一款纯css3实现的颜色渐变按钮的代码教程
2014/11/12 HTML / CSS
什么是动态端口(Dynamic Ports)?动态端口的范围是多少?
2014/12/12 面试题
审计工作个人的自我评价
2013/12/25 职场文书
还款承诺书范文
2014/05/20 职场文书
酒店管理专业自荐信
2014/05/23 职场文书
安全在我心中演讲稿
2014/09/01 职场文书
四川省传达学习贯彻党的群众路线教育实践活动总结大会精神新闻稿
2014/10/26 职场文书
感动中国何玥观后感
2015/06/02 职场文书
古诗之爱国古诗5首
2019/09/20 职场文书