php中curl和file_get_content的区别


Posted in PHP onMay 10, 2014

直到最近,要做一个网页小偷程序的时候才发现file_get_content已经完全不能满足需求了。我觉得,在读取远程内容的时候,file_get_content除了使用比curl便捷以外,其他都没有curl好。

主要区别:

学习才发现,curl支持很多协议,有FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE以及LDAP,也就是说,它能做到很多file_get_content做不到的事情。curl在php可以实现远程获取和采集内容;实现PHP网页版的FTP上传下载;实现模拟登陆;实现接口对接(API),数据传输;实现模拟Cookie;下载文件断点续传等等,功能十分强大。

了解curl一些基本的使用后,才发现其实并不难,只不过记住里面一些设置参数,难弄一点,但是我们记住几个常用的就可以了。

开启curl:

因为PHP默认是不支持curl功能的,因此如果要用curl的话,首先需要在php.ini中开启该功能,即去掉 ;extension= php_curl.dll 前面的分号,然后保存后重启apache/iis就好了。

基本语法:

$my_curl = curl_init();    //初始化一个curl对象
curl_setopt($my_curl, CURLOPT_URL, "https://3water.com");    //设置你需要抓取的URL
curl_setopt($my_curl,CURLOPT_RETURNTRANSFER,1);    //设置是将结果保存到字符串中还是输出到屏幕上,1表示将结果保存到字符串
$str = curl_exec($curl);    //执行请求
echo $str;    //输出抓取的结果
curl_close($curl);    //关闭url请求

 
PHP 相关文章推荐
IIS下PHP连接数据库提示mysql undefined function mysql_connect()
Jun 04 PHP
php中批量删除Mysql中相同前缀的数据表的代码
Jul 01 PHP
PHP文章按日期(月日)SQL归档语句
Nov 29 PHP
php的$_FILES的临时储存文件与回收机制实测过程
Jul 12 PHP
PHP中substr()与explode()函数用法分析
Nov 24 PHP
php实现图片局部打马赛克的方法
Feb 11 PHP
UTF-8正则表达式如何匹配汉字
Aug 03 PHP
详解PHP中websocket的使用方法
Sep 15 PHP
针对thinkPHP5框架存储过程bug重写的存储过程扩展类完整实例
Jun 16 PHP
Laravel5.1框架注册中间件的三种场景详解
Jul 09 PHP
PHP批斗大会之缺失的异常详解
Jul 09 PHP
laravel 5.5 关闭token的3种实现方式
Oct 24 PHP
php实现文件下载功能的几个代码分享
May 10 #PHP
php按百分比生成缩略图的代码分享
May 10 #PHP
PHP数字字符串左侧补0、字符串填充和自动补齐的几种方法
May 10 #PHP
php下获取http状态的实现代码
May 09 #PHP
PHP防范SQL注入的具体方法详解(测试通过)
May 09 #PHP
简单的php新闻发布系统教程
May 09 #PHP
php下载文件源代码(强制任意文件格式下载)
May 09 #PHP
You might like
php实现按指定大小等比缩放生成上传图片缩略图的方法
2014/12/15 PHP
php计算整个mysql数据库大小的方法
2015/06/19 PHP
PHP设计模式之委托模式定义与用法简单示例
2018/08/13 PHP
PHP实现的62进制转10进制,10进制转62进制函数示例
2019/06/06 PHP
HTML IMG标签 onload 内存溢出导致浏览器CPU占用过高
2021/03/09 Javascript
通过Unicode转义序列来加密,按你说的可以算是混淆吧
2007/05/06 Javascript
js 自定义的联动下拉框
2010/02/07 Javascript
javascript获取隐藏dom的宽高 具体实现
2013/07/14 Javascript
扩展JS Date对象时间格式化功能的小例子
2013/12/02 Javascript
使用原生js封装webapp滑动效果(惯性滑动、滑动回弹)
2014/05/06 Javascript
javascript获取flash版本号的方法
2014/11/20 Javascript
推荐阅读的js快速判断IE浏览器(兼容IE10与IE11)
2015/12/13 Javascript
JS打开摄像头并截图上传示例
2017/02/18 Javascript
node.js中axios使用心得总结
2017/11/29 Javascript
echarts大屏字体自适应的方法步骤
2019/07/12 Javascript
微信小程序之侧边栏滑动实现过程解析(附完整源码)
2019/08/23 Javascript
前端如何实现动画过渡效果
2021/02/05 Javascript
Python基于socket实现简单的即时通讯功能示例
2018/01/16 Python
Python网络编程使用select实现socket全双工异步通信功能示例
2018/04/09 Python
matplotlib 生成的图像中无法显示中文字符的解决方法
2020/06/10 Python
Python pip 常用命令汇总
2020/10/19 Python
猫途鹰:全球领先的旅游点评社区
2017/04/07 全球购物
Pretty Green美国:英式摇滚服饰风格代表品牌之一
2019/01/23 全球购物
美国精油公司:Plant Therapy
2019/05/17 全球购物
自动化专业本科毕业生求职信
2013/10/20 职场文书
医学院护理专业应届生求职信
2013/11/12 职场文书
班长竞选演讲稿
2014/04/24 职场文书
普通党员个人对照检查材料
2014/09/18 职场文书
预备党员对照检查材料思想汇报
2014/09/24 职场文书
毕业实习指导教师评语
2014/12/31 职场文书
个人委托书范文
2015/01/28 职场文书
社区艾滋病宣传活动总结
2015/05/07 职场文书
排球赛新闻稿
2015/07/17 职场文书
2016特色励志班级口号
2015/12/24 职场文书
小学作文之描写天气
2019/08/15 职场文书
Spring Cloud OAuth2实现自定义token返回格式
2022/06/25 Java/Android