PHP cURL

17 Mar 2025 | 4 分钟阅读

什么是 PHP cURL?

cURL 是 Client URL 的缩写。PHP cURL 是 PHP 最强大的扩展库之一。它允许用户在 PHP 中创建 HTTP 请求。cURL 库用于通过多种协议与外部服务器进行通信。

cURL 允许用户通过 URL 语法发送和接收数据。cURL 可以轻松地实现不同网站和域之间的通信。

cURL 分为两部分:cURL 和 libcURL。

  1. cURL: cURL 允许用户通过 URL 语法发送和接收数据。
  2. libcURL: libcURL 是一个库。它由Daniel Stenberg创建。cURL 库用于通过多种协议与外部服务器进行通信。目前,它支持多种协议,包括 LDAP、TPS、GOPHER、FTP、HTTP、HTTPS、FILE、HTTP POST、TELNET、DICT、HTTP PUT、FTP 上传、FTP 续传、Kerberos、基于 HTTP 的上传、TTPS 证书、代理、Cookie、HTTP 代理隧道、用户和密码身份验证等。

一些基本的 cURL 函数

序号函数名描述
1.curl_init()此函数启动一个 cURL 会话。
2.curl_setopt()此函数定义 cURL 会话的各种选项。
3.curl_setopt($ch, option, value)此函数通过“ch”参数为 cURL 会话定义值和选项。
4.curl_exec()此函数执行 cURL 会话、实际数据传输和 http 请求。
5.curl_close()此函数用于关闭 cURL 会话。

基本示例

在深入研究更复杂的示例之前,让我们先回顾一下 PHP 中 cURL 请求的基本示例。

示例 1

示例 2

示例 3

其他 cURL 函数

序号函数名描述
1.curl_copy_handle()此函数用于复制一个 cURL 句柄及其所有偏好设置。
2.curl_errno()此函数返回 cURL 会话中的最后一个错误号。
3.curl_error()此函数返回包含当前会话最后一个错误的字符串。
4.curl_escape()此函数用于对给定字符串的 URL 进行编码。
5.curl_file_create()此函数用于创建一个 cURL 文件对象。
6.curl_getinfo()此函数返回特定传输的信息。
7.curl_multi_add_handle()此函数将 cURL_handle 连接到 cURL_multi_handle。
8.curl_multi_close()此函数用于关闭多个 cURL 句柄集。
9.curl_multi_info_read()此函数接收当前传输信息。
10.curl_multi_exec()此函数执行当前 cURL 会话的子连接。
11.curl_setopt_array()此函数为 cURL 会话设置多个选项。
12.curl_version此函数返回 cURL 版本信息。
13.curl_strerror()此函数返回描述给定错误的字符串。
14.curl_pause()此函数用于暂停 cURL 连接。
15.curl_reset()此函数用于重置 cURL 会话的所有选项。

cURL 扩展是如何工作的?

它通过向网站发送请求来运行,并且包含以下部分:

  1. 初始化
  2. 设置选项(例如,定义 URL 的选项)
  3. 使用 curl_exec() 执行
  4. 关闭 cURL 句柄

如何使用 PHP cURL 从远程站点下载文件?

如果用户在服务器中包含 CURLOPT_FILE 函数,用户可以从任何地方下载远程文件。

示例

如何使用 cURL 处理 Cookie?

Cookie 用于识别网站上的已登录用户。为此,PHP cURL 提供了一种机制,您可以通过它来保存 Cookie。

有两个主要函数用于处理 Cookie:

  1. CURLOPT_COOKIEJAR: 此函数定义了写入 Cookie 所需的文件。
  2. CURLOPT_COOKIEFILE: 此函数定义了读取 Cookie 所需的文件。

示例


下一个主题Pilot Testing