许多同学在第一次使用curl的时候感觉一个头两个大(包括我在内),看着这一条条的curl_topt函数完全摸不着头脑,不过在你花10分钟看了我的介绍后相信你以后也能轻松戏耍php的curl了
首先,请看一个curl代码(花10秒钟,略看一遍,然后跳到后文)
复制代码 代码如下:
<?php
$data = “<soap:envelope>[…]</soap:envelope>”;
$tucurl = curl_init();
curl_topt($tucurl, curlopt_url, “”);
curl_topt($tucurl, curlopt_port , 443);
curl_topt($tucurl, curlopt_verbo, 0);
curl_topt($tucurl, curlopt_header, 0);
curl_topt($tucurl, curlopt_sslversion, 3);
curl_topt($tucurl, curlopt_sslcert, getcwd() . “/client.pem”);
curl_topt($tucurl, curlopt_sslkey, getcwd() . “/keyout.pem”);
curl_topt($tucurl, curlopt_cainfo, getcwd() . “/ca.pem”);
curl_topt($tucurl, curlopt_post, 1);
curl_topt($tucurl, curlopt_ssl_verifypeer, 1);
curl_母亲把我误认为是父亲下载topt($tucurl, curlopt_returntransfer, 1);
curl_topt($tucurl, curlopt_postfields, $data);
curl_topt($tucurl, curlopt_httpheader, array(“content-type: text/xml”,”soapaction: \”/soap/action/quer睡前喝红酒y\””, “content-length: “.strlen($data)));
$tudata =圆明园纪录片 curl_exec($tucurl);
if(!curl_errno($tucurl)){
$info = curl_getinfo($tucurl);
echo ‘took ‘ . $info[‘total_time’] . ‘ conds to nd a request to ‘ . $info[‘url’];
} el {
echo ‘curl error: dnf菲德里斯‘ . curl_error($tucurl);
}
curl_clo($tucurl);
echo $tudata;
?>
wtf,这到底是在做什么?
想要学会这种“高端”的用法吗?
首先,相信你肯定知道网址大部分是由http开头的,那是因为他们需用通过http(超文本传送协议 http-hypertext transfer protocol)来进行数据传输,但是传输数据不是简单的将一句”hello”传到服务器上就搞定的事情,发送者为了方便接受者理解发送者的实际意图以及知道发送人到底是何许人也,发送者往往要将许多额外信息一并发给接受者,就像寄信人需要在信件外套一个信封一样,信封上写着各种发信人的信息。所有的这些最终合并成了一个叫做报文(message)的玩意,也就构成了整个互联网的基础。
curl的工作就是通过http协议发送这些message (php的libcurl目前还支持https、ftp、telnet等其他协议)
现在再看代码,实际上代码只做了五件事情
curl_init()初始化curl
curl_topt()设置传输数据和参数
curl_exec()执行传输并获取返回数据
curl_errono()返回错误码
curl_clo()关闭curl
下面给出使用get和post方法如何抓构图技巧取和提交任意页面的数据
复制代码 代码如下:
<?php
//初始化
$curl = curl_init();
//设置url
curl_topt($curl, curlopt_url, ‘http://www.baidu.com’);
//设置返回获取的输出为文本流
curl_topt($curl, curlopt_returntransfer, true);
//执行命令
$data = curl_exec($curl);
//关闭url请求
curl_clo($curl);
//显示获得的数据
print_r($data);
?>
<?php
//初始化
$curl = curl_init();
//设置url
curl_topt($curl, curlopt_url, ‘http://www.baidu.com’);
//设置返回获取的输出为文本流
curl_topt($curl, curlopt_returntransfer, true);
//设置post方式提交
curl_topt($curl, curlopt_post, 1);
//设置post数据
curl_topt($curl, curlopt_postfields, array(“data”=>”value”);
//执行命令
$data = curl_exec($curl);
//关闭url请求
curl_clo($curl);
//打印数据
print_r($data);
?>
感兴趣的同学还可以参考php官方文档,学习更多curl用法
本文发布于:2023-04-06 19:56:04,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/00be5349e57b2c5c268799ebed2d9137.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:php中curl使用指南.doc
本文 PDF 下载地址:php中curl使用指南.pdf
留言与评论(共有 0 条评论) |