类别:PHP教程 / 日期:2019-12-01 / 浏览:196 / 评论:0

假如你想相识更多关于php的学问,能够点击:php教程

  cURL能够运用URL的语法模仿阅读器来传输数据,由于它是模仿阅读器,因而它一样支撑多种协定,FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP等协定都能够很好的支撑,包括一些:HTTPS认证,HTTP POST要领,HTTP PUT要领,FTP上传,keyberos认证,HTTP上传,代办效劳器,cookies,用户名/暗码认证,下载文件断点续传,上传文件断点续传,http代办效劳器管道,以至它还支撑IPv6,scoket5代办效劳器,经由过程http代办效劳器上传文件到FTP效劳器等等。

  运用PHP的cURL库能够简朴和有用地去抓网页。你只需要运转一个剧本,然后剖析一下你所抓取的网页,然后就能够以顺序的体式格局取得你想要的数据了。无论是你想从从一个链接上取部份数据,或是取一个XML文件并把其导入数据库,那怕就是简朴的猎取网页内容,cURL 是一个功能强大的PHP库。

1、PHP竖立CURL请求的基础步骤

①:初始化

  curl_init()

②:设置属性

  curl_setopt().有一长串cURL参数可供设置,它们能指定URL请求的各个细节。

③:实行并猎取效果

  curl_exec()

④:开释句柄

  curl_close()

2、实例:

php curl 发送get请求:

//初始化
$curl = curl_init();
//设置抓取的url
curl_setopt($curl, CURLOPT_URL, 'http://www.baidu.com');
//设置头文件的信息作为数据流输出
curl_setopt($curl, CURLOPT_HEADER, 1);
//设置猎取的信息以文件流的情势返回,而不是直接输出。
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
//实行命令
$data = curl_exec($curl);
echo curl_getinfo($curl,CURLINFO_HTTP_CODE); //输出请求状况码
//封闭URL请求
curl_close($curl);
//显现取得的数据
print_r($data);

php curl 发送post请求:

//初始化
$curl = curl_init();
//设置抓取的url
curl_setopt($curl, CURLOPT_URL, 'http://localhost/test/test.php');
//设置头文件的信息作为数据流输出
curl_setopt($curl, CURLOPT_HEADER, 1);
//设置猎取的信息以文件流的情势返回,而不是直接输出。
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
//设置post体式格局提交
curl_setopt($curl, CURLOPT_POST, 1);
//设置post数据
$post_data = array(
    "title" => "1290800466",
    "content" => "3424243243"
);
//post提交的数据
curl_setopt($curl, CURLOPT_POSTFIELDS, $post_data);
//实行命令
$data = curl_exec($curl);
//封闭URL请求
curl_close($curl);
//显现取得的数据
print_r($data);

test.php:

<?php
$title = $_REQUEST['title'];
$content = $_REQUEST['content'];
error_log($title."\n",3,'error.log');
error_log($content."\n",3,'error.log');
echo 'ok';

3、PHP cURL 函数:

以下包括了PHP cURL函数列表:

函数 形貌
curl_close() 封闭一个cURL会话。
curl_copy_handle() 复制一个cURL句柄和它的一切选项。
curl_errno() 返回末了一次的毛病号。
curl_error() 返回一个庇护当前会话近来一次毛病的字符串。
curl_escape() 返回转义字符串,对给定的字符串举行URL编码。
curl_exec() 实行一个cURL会话。
curl_file_create() 建立一个 CURLFile 对象。
curl_getinfo() 猎取一个cURL衔接资本句柄的信息。
curl_init() 初始化一个cURL会话。
curl_multi_add_handle() 向curl批处置惩罚会话中增加零丁的curl句柄。
curl_multi_close() 封闭一组cURL句柄。
curl_multi_exec() 运转当前 cURL 句柄的子衔接。
curl_multi_getcontent() 假如设置了CURLOPT_RETURNTRANSFER,则返回猎取的输出的文本流。
curl_multi_info_read() 猎取当前剖析的cURL的相干传输信息。
curl_multi_init() 返回一个新cURL批处置惩罚句柄。
curl_multi_remove_handle() 移除curl批处置惩罚句柄资本中的某个句柄资本。
curl_multi_select() 守候一切cURL批处置惩罚中的运动衔接。
curl_multi_setopt() 设置一个批处置惩罚cURL传输选项。
curl_multi_strerror() 返回形貌毛病码的字符串文本。
curl_pause() 停息及恢复衔接。
curl_reset() 重置libcurl的会话句柄的一切选项。
curl_setopt_array() 为cURL传输会话批量设置选项。
curl_setopt() 设置一个cURL传输选项。
curl_share_close() 封闭cURL同享句柄。
curl_share_init() 初始化cURL同享句柄。
curl_share_setopt() 设置一个同享句柄的cURL传输选项。
curl_strerror() 返回毛病代码的字符串形貌。
curl_unescape() 解码URL编码后的字符串。
curl_version() 猎取cURL版本信息。

胜利时返回 TRUE, 或许在失利时返回 FALSE。

一些状况代码

1xx:请求收到,继承处置惩罚

2xx:操纵胜利收到,剖析、接收

3xx:完成此请求必需进一步处置惩罚

4xx:请求包括一个毛病语法或不能完成

5xx:效劳器实行一个完整有用请求失利

100——客户必需继承发出请求

101——客户请求效劳器依据请求转换HTTP协定版本

200——生意业务胜利

201——提醒晓得新文件的URL

202——接收和处置惩罚、但处置惩罚未完成

203——返回信息不确定或不完整

204——请求收到,但返回信息为空

205——效劳器完成了请求,用户代办必需复位当前已阅读过的文件

206——效劳器已完成了部份用户的GET请求

300——请求的资本可在多处取得

301——删除请求数据

302——在其他地点发明了请求数据

303——发起客户接见其他URL或接见体式格局

304——客户端已实行了GET,但文件未变化

305——请求的资本必需从效劳器指定的地点取得

306——前一版本HTTP中运用的代码,现行版本中不再运用

307——说明请求的资本临时性删除

400——毛病请求,如语法毛病

401——请求受权失利

402——保存有用ChargeTo头相应

403——请求不许可

404——没有发明文件、查询或URl

405——用户在Request-Line字段定义的要领不许可

406——依据用户发送的Accept拖,请求资本不可接见

407——相似401,用户必需首先在代办效劳器上取得受权

408——客户端没有在用户指定的饿时间内完成请求

409——对当前资本状况,请求不能完成

410——效劳器上不再有此资本且无进一步的参考地点

411——效劳器谢绝用户定义的Content-Length属性请求

412——一个或多个请求头字段在当前请求中毛病

413——请求的资本大于效劳器许可的大小

414——请求的资本URL善于效劳器许可的长度

415——请求资本不支撑请求项目花样

416——请求中包括Range请求头字段,在当前请求资本范围内没有range指导值,请求

也不包括If-Range请求头字段

417——效劳器不满足请求Expect头字段指定的期望值,假如是代办效劳器,多是下一级效劳器不能满足请求

500——效劳器发作内部毛病

501——效劳器不支撑请求的函数

502——效劳器临时不可用,偶然是为了防备发作体系过载

503——效劳器过载或停息维修

504——关隘过载,效劳器运用另一个关隘或效劳来相应用户,守候时间设定值较长

505——效劳器不支撑或谢绝支请求头中指定的HTTP版本

以上就是php curl发送请求细致教程的细致内容,更多请关注ki4网别的相干文章!

打赏

感谢您的赞助~

打开支付宝扫一扫,即可进行扫码打赏哦~

版权声明 : 本文未使用任何知识共享协议授权,您可以任何形式自由转载或使用。

 可能感兴趣的文章