(独孤九剑)--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 ...
随机推荐
- Java 编码 UTF-8
近期在处理文件时发现了相同类型的文件使用的编码可能是不同的.所以想将文件的格式统一一下(由于UTF-8的通用性,决定往UTF-8统一),遇见的第一个问题是:怎样查看现有文件的编码方式. 文件编码问题集 ...
- delphi2010发送邮件—中文显示为乱码解决
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaGVsbG9fbXlob21l/font/5a6L5L2T/fontsize/400/fill/I0JBQk ...
- UVA - 11374 Airport Express (Dijkstra模板+枚举)
Description Problem D: Airport Express In a small city called Iokh, a train service, Airport-Express ...
- 【转】pthread_cond_signal 虚假唤醒问题
引用:http://blog.csdn.net/leeds1993/article/details/52738845 什么是虚假唤醒? 举个例子,我们现在有一个生产者-消费者队列和三个线程. I.1号 ...
- UVA 213 Message Decoding 【模拟】
题目链接: https://cn.vjudge.net/problem/UVA-213 https://uva.onlinejudge.org/index.php?option=com_onlinej ...
- bzoj4869
http://www.lydsy.com/JudgeOnline/problem.php?id=4869 终于A了...参考了下dalao的代码... 拓展欧几里得定理,改了几次就不变了,但是用的时候 ...
- window系统 查看端口 被哪个进程占用了
一.在windows命令行窗口下执行:运行--cmdC:\>netstat -aon|findstr "8080" TCP 127.0.0.1:80 0. ...
- bzoj1085骑士精神(搜索)
1085: [SCOI2005]骑士精神 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 1893 Solved: 1051 Description ...
- hbase优化小结
目录: 1,背景 2,GC 3,hbase cache 4,compaction 5,其他 1,背景 项目组中,hbase主要用来备份mysql数据库中的表.主要通过接入mysql binlog,经s ...
- 网站开发综合技术 一 JavaScript简介 二JavaScript语法
第1部分 JavaScript简介 1.JavaScript它是个什么东西? 它是个脚本语言,需要有宿主文件,他的宿主文件是html文件. 2.它与Java有什么关系? 没有什么直接联系,java是S ...