(独孤九剑)--cURL
【一】概论
日常开发里,cURL使用最多的协议就是HTTP协议的GET、POST请求,其他协议和请求方式用的较少。
【二】开启
开发前检验是否开启了cURL模块,开启方法为php.int中打开extension=php_curl.dll即可
开启后去页面查看是否包含enable开启
【三】使用步骤
(1)初始化cURL资源
$cn = curl_init();
(2)传入参数,设置请求的协议地址
//设置选项,包括URL
curl_setopt($cn,CURLOPT_URL,"localhost");
(3)参数设置是否返回请求结果
curl_setopt($cn, CURLOPT_RETURNTRANSFER, 1);
(4)设置发送数据(无发送数据可不设置)
curl_setopt($cn, CURLOPT_HEADER, 0);
(5)其他参数信息设置(按实际工作需求决定)
(6)执行或执行得到返回结果
//执行并获取HTML文档内容
$output = curl_exec($cn);
(7)释放cURL句柄,关闭cURL资源
//释放cURL句柄
curl_close($cn);
//打印获得的数据
print_r($output);
完整代码:
<?php
// phpinfo();
$cn = curl_init();
//设置选项,包括URL
curl_setopt($cn,CURLOPT_URL,"http://www.php.cn");
curl_setopt($cn, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($cn, CURLOPT_HEADER, 0);
//执行并获取HTML文档内容
$output = curl_exec($cn);
//释放cURL句柄
curl_close($cn);
//打印获得的数据
print_r($output);
?>
注意:第二步到第五步可以合为一个步骤,统称为cURL参数设置。所有curl参数设置都是通过curl_setopt()完成
【详解】
(1)初始化cURL资源
在后面通过curl_setopt()向curl的操作资源变量压入数据
(2)参数设置请求的协议地址
curl_setopt(资源变量,参数选项,参数值);
CURLOPT_URL这个参数选项规定了请求的url地址
(3)参数设置是否返回请求结果
若要curl请求返回对应的结果,则需要设置一个参数。参数名为:CURLOPT_RETURNTRANSFER
若需要返回值,则设置为1。无需返回结果则设置为0即可
(4)设置发送的数据
若是get请求,则不需要设置发送的参数。
若为post请求,则需要设置发送的参数
CURLOPT_POST值设为1是使用POST方法,0为GET方法
(5)其他参数信息设置
若是https有时需要忽略安全证书
此外还可以设置超时时间
curl_setopt($cn,CURLOPT_TIMEOUT,10);
(独孤九剑)--cURL的更多相关文章
- 在PowerShell中使用curl(Invoke-WebRequest)
前言 习惯了windows的界面模式就很难转去命令行,甚至以命令行发家的git也涌现出各种界面tool.然而命令行真的会比界面快的多,如果你是一个码农. situation:接到需求分析bug,需要访 ...
- php中实现的一个curl批处理的实例
curl是利用URL语法在命令行方式下工作的开源文件传输工具 本文在php中实现了的一个curl批处理的实例. 代码如下: header("Content-Type:text/html;ch ...
- PHP curl 函数
转载http://sunking.sinaapp.com/archives/111 最近使用curl的时候,发现了一个比较好用的函数,当然是初级者适用的一个函数,就是curl_getinfo(), 在 ...
- curl -w,–write-out参数详解
顾名思义,write-out的作用就是输出点什么.curl的-w参数用于在一次完整且成功的操作后输出指定格式的内容到标准输出. 输出格式由普通字符串和任意数量的变量组成,输出变量需要按照%{varia ...
- CURL HELP
CURL下载 在windows的系统环境变量中,将CURL的路径(curl.exe存放的路径)复制到"Path"变量的结尾 Usage: curl [options...] < ...
- curl的登录总结
demo1 <?php $curl=curl_init('http://www.baidu.com'); curl_exec($curl); curl_close($curl); ?> c ...
- php curl获取的数据不直接输出
curl获取页面内容,不直接输出到页面 必需设置curl的CURLOPT_RETURNTRANSFER选项为1或true curl_setopt($ch, CURLOPT_RETURNTRANSFER ...
- PHP的CURL
使用CURL完成一个请求: 初始化连接句柄 设置CURL选项 执行并获取结果 释放CURL连接句柄 发送GET请求 function doGetRequest($url,$data,$timeout ...
- PHP curl报错“Problem (2) in the Chunked-Encoded data”解决方案
$s = curl_init(); curl_setopt($s, CURLOPT_POST, true); curl_setopt($s, CURLOPT_POSTFIELDS, $queryStr ...
随机推荐
- rsync 3.1.1源代码编译安装配置
http://rsync.samba.org/ rsync-3.1.1.tar.gz ---0.卸载rpm # yum remove rsync -----1.安装: tar -zxvf rsync- ...
- c#控件重绘的问题
1.当Panel有背景图像的时候,往Panel添加控件(带图像),画面会非常闪烁,所以,Panel尽量不要带背景图像 2.带背景图像可以参考designer.cs里面的写法... 添加Control之 ...
- XMU 1040 Schedule 【拓扑排序】
1040: Schedule Time Limit: 500 MS Memory Limit: 64 MBSubmit: 12 Solved: 2[Submit][Status][Web Boar ...
- 基于Jquery插件Uploadify实现实时显示进度条上传图片
网址:http://www.jb51.net/article/83811.htm 这篇文章主要介绍了基于Jquery插件Uploadify实现实时显示进度条上传图片的相关资料,感兴趣的小伙伴们 ...
- 【USACO07FEB】 Cow Relays
[题目链接] 点击打开链接 [算法] 朴素算法,就是跑N-1遍floyd 而满分算法就是通过矩阵快速幂加速这个过程 [代码] ...
- 51Nod 1450 闯关游戏 —— 期望DP
题目:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1450 期望DP: INF 表示这种情况不行,转移时把不行的概率也转 ...
- 提交图片base64格式问题
提交图片base64格式给后台,一定把data:image/png;base64,去掉,不然提交后后台返回的图片URL打开是一个破坏的图片.使用split("base64,")[1 ...
- 解决 jquery dialog 弹框destroy销毁方法不能把弹出元素设置成初始状态
在使用jquery ui中的dialog弹出窗口的时候遇到一个问题,就是页面弹出窗口关闭后希望表单元素能回到初始状态 例如文本框输入内容后关闭dialog后里面的内容清除,使用了destroy方法也不 ...
- render same axis
// 当前渲染相机的参数 QGlobalCamera* curRenderCamera = _getWorld()->getMainCam(); const Matrix4& ...
- bzoj 1647: [Usaco2007 Open]Fliptile 翻格子游戏【dfs】
这个可以用异或高斯消元,但是我不会呀我用的暴搜 2的m次方枚举第一行的翻转情况,然后后面的就定了,因为对于一个j位置,如果i-1的j位置需要翻,那么一定要翻i的j,因为这是i-1的j最后翻的机会 按字 ...