PHP中使用curl扩展的详细教程与代码实例解析

2015 年 07 月 02 日 08 时 45 分 04 秒进行了更新,投稿人为 junjie
这篇文章主要是对 PHP 中使用 curl 的入门教程进行介绍。文中讲解了 curl 的概述,还讲解了如何安装 curl 。同时也说明了在 PHP 中使用 curl 的步骤,并且给出了一个简单的 curl 代码实例。有需要的朋友可以参考一下。
概述
在我之前的一篇文章“curl 和 libcurl 简介”里,给大家简略地介绍了 curl 方面的知识。这篇文章将要给大家介绍一下 PHP 里面的 curl 扩展。
在上一篇文章里,区分了 curl 和 libcurl,还解释了一些相关概念。并且知道了 PHP 中的 curl 扩展是对 libcurl 的封装。然而,在这篇文章中,为了书写方便,不会再对这两个概念进行区分,所以文章后续提到的 curl 指的就是 libcurl,希望不会让大家感到困惑。
PHP 中的 curl 扩展,在此处就不再详细地进行介绍啦。大家可以去查看相关的文档。
安装curl
关于 curl 的安装,这里不会进行过多的介绍。在 windows 和 linux 系统中,安装流程是相同的。可以根据所在的平台选择合适的安装方式,接着在 php.ini 文件里开启 curl 扩展,这与其他扩展的安装过程是一样的。
PHP中使用curl的步骤
在 PHP 里,能够利用 curl 来达成各式各样的功能。比如抓取网页,还有进行文件的上传与下载,以及模拟登录等。然而,这些功能的实现都是依据四个步骤来完成的,正因如此,curl 的使用并非是复杂的。
使用curl时,主要分为以下四个步骤:
1.初始化一个curl实例—curl_init()
设置与 curl 执行相关的选项,可通过 curl_setopt() 来实现。
3.执行curl查询—curl_exec()
4.关闭curl—curl_close()
在这四个步骤当中,步骤 1、步骤 3 和步骤 4 都较为容易。最为麻烦的当属步骤 2 了,此步骤是设置 curl 的选项,这里存在着 100 多个各不相同的选项,若要实现不同的功能,就需要对这些选项进行组合。
下面对这四个步骤做一下说明:
初始化一个 curl 实例,通过函数 curl_init()来进行。查看 PHP 手册可知,该函数的返回值为资源(resource)类型。我们需要用一个变量来保存这个实例,因为后续步骤会用到它。具体代码示例如下:
复制代码 代码如下:
使用 curl_init() 函数进行初始化操作,最终输出 resource(2, curl) 。
设置与 curl 相关的选项,通过使用函数 curl_setopt()来设置。此函数需接受三个参数,其一为要设置的 curl 实例,即第一步中的那个实例;其二为要设置的选项,这是一个预定义的常量,关于具体有哪些选项,大家可在手册中自行查看;其三为要设置的选项的具体值。
代码示例:
复制代码 代码如下:
curl_setopt 函数对 $curl 进行设置,设置的选项是 CURLOPT_URL,将其设置为 "http://www.php.net"。
执行 curl 查询,此步骤使用函数 curl_exec()。函数 curl_exec() 接受一个参数,而这个参数就是第 1 步中获取的实例。
代码示例:
复制代码 代码如下:
curl_exec ($curl);
关闭当前的 curl。这一步是通过使用函数 curl_close()来实现的。并且该函数接受的参数是第 1 步中获取到的 curl 实例。
代码示例:
复制代码 代码如下:
curl_close($curl);
在 PHP 里使用 curl 通常要遵循这四个步骤。其中,主要是依据对第二步的不同设置来达成不同的功能。因此,第二步是较为麻烦的,有的甚至需要大家用心去领会。
一个简单的curl代码实例
这里给大家简单演示一个抓取网页内容的实例,前面已经给大家介绍了使用 curl 的四个步骤,代码较为简单,不过希望能让大家更好地理解 curl 。