美文网首页
怎么使用PHP中的cURL呢?

怎么使用PHP中的cURL呢?

作者: Jack_7eb5 | 来源:发表于2018-06-02 16:58 被阅读5次

    涉及到和第三方服务器打交道总难免要使用cURL工具,虽然一直在使用,但是对里面的操作知道的很少,这期将隆重的介绍一下cURL,一边会后更好的使用cURL。废话不多说,开始正文部分。

    cURL到底是个什么呢?从字面意义上看应该是英文缩写,官方是这样解释的

    cURL:Client  URL  Library Functions, 即使用CURL语法传输数据的命令行工具

    既然是一个工具那么平时可以用来干些什么呢?在PHP的世界里可以模拟客户端向服务器端发送资源,

    CURL的角色

    cURL可以做些什么呢,既然可以模仿客户端,可以做这些事情

    ·编写网页爬虫,获取网络资源

    ·获取WebService接口的数据资源,比如获取天气、微信用户等信息

    ·上传下载FTP服务器上的资源

    ·其他的操作....

    cURL可以做绝大部分客户端的工作,功能很强大,既然这么厉害赶紧用起来,使用也很容易。

    ·第一步初始化cURL:curl_init()

    `第二步向服务器发送数据并接受服务器返回的数据:curl_exec()

    ·第三步关闭cURL,curl_close()

    最简单的操作

    就这么简单,稍微复杂的操作在第二步,针对不同的请求会有不同的参数设置,这也是我们学习的重心。

    常规参数设置:

    CURLOPT_HEADER:   启用后头文件的信息将作为数据流直接输出;

    CURLOPT_RETURNTRANSFER:启用后curl_exec获取的信息将以字符串返回

    CURLOPT_URL:需要获取的URL

    CURLOPT_USERAGENT:用户代理,使得服务器能够识别客户使用的操作系统及版本、CPU 类型

    CURLOPT_CONNECTTIMEOUT:连接时等待的秒杀

    CURLOPT_TIMEOUT:cURL函数允许执行的最长秒数

    CURLOPT_FOLLOWLOCATION:允许根据服务器返回的HTTP中的“Location”重定向

    CURLOPT_MAXREDIRS:指定最多的HTTP重定向

    POST设置:

    CURLOPT_POST:为true发送POST请求

    CURLOPT_POSTFIELDS:发送的POST数据,格式类似'para1=val1¶2=val2&...'

    CURLOPT_HTTPHEADER:设置HTTP头部信息,格式为:['Content-type:application/x-www-form-urlencoded;charset=utf-8','Content-length:100']

    cURL POST获取API中的数据

    这里设置参数使用的是curl_setopt_array函数,这个函数可以批量设置curl参数,建议这么操作,curl_error:返回最后一次错误的字符串,curl_errno:返回最后一次的错误代码。使用cURL发送POST数据就是这么简单,如果POST数据的时候还需要设置COOKIE怎么办呢,下面我们模拟登陆设置COOKIE

    设置COOKIE需要的设置:

    CURLOPT_COOKIESESSION:设置为true将开启一次新的会话cookie,强制libcurl忽略以前的会话

    CURLOPT_COOKIEFILE:包含cookie数据的文件名

    CURLOPT_COOKIEJAR:连接结束后,调用curl_close后,保存cookie信息的文件

    CURLOPT_COOKIE:设置HTTP请求中的“Cookie::”部分的内容,多个cookie用分号分隔,分号后再加一个空格,比如: "fruit=apple; colour=red"

    COOKIE代码截图1 COOKIE代码截图2

    相关文章

      网友评论

          本文标题:怎么使用PHP中的cURL呢?

          本文链接:https://www.haomeiwen.com/subject/cmdcsftx.html