PHP函数介绍—curl_getinfo(): 获取cURL请求的相关信息
cURL是一种在PHP中用于发送和接收数据的强大工具,它支持各种协议,例如HTTP、FTP、SMTP等。当我们使用cURL发送请求后,有时候需要获取一些与请求相关的信息,例如请求的URL、响应的状态码等。这时,就可以使用curl_getinfo()函数来获取这些信息。
curl_getinfo()函数会返回一个包含请求相关信息的关联数组。我们可以通过指定不同的选项来获取不同的信息。以下是一些常用的选项及其相应的信息:
CURLOPT_EFFECTIVE_URL :以字符串形式返回请求的URL地址。
CURLOPT_HTTP_CODE :以整数形式返回服务器响应的HTTP状态码。
CURLOPT_RESPONSE_CODE :以整数形式返回服务器响应的HTTP状态码(cURL版本7.10.8之后可用)。
CURLOPT_TOTAL_TIME :以浮点数形式返回整个请求过程花费的总时间(秒)。
CURLOPT_CONTENT_LENGTH_DOWNLOAD :以整数形式返回下载内容的字节数。
CURLOPT_CONTENT_LENGTH_UPLOAD :以整数形式返回上传内容的字节数。
下面是一个使用curl_getinfo()函数的示例代码:
// 创建一个cURL资源 $curl = curl_init(); // 设置请求的URL地址 curl_setopt($curl, CURLOPT_URL, "https://www.example.com"); // 执行请求 $response = curl_exec($curl); // 获取请求的相关信息 $info = curl_getinfo($curl); // 输出请求的URL地址 echo "请求的URL地址:".$info['url']."<br>"; // 输出服务器响应的HTTP状态码 echo "HTTP状态码:".$info['http_code']."<br>"; // 输出整个请求过程花费的总时间 echo "总时间:".$info['total_time']."秒<br>"; // 输出下载内容的字节数 echo "下载内容字节数:".$info['download_content_length']."<br>"; // 输出上传内容的字节数 echo "上传内容字节数:".$info['upload_content_length']."<br>"; // 关闭cURL资源 curl_close($curl);登录后复制
上述代码中,首先创建一个cURL资源,并设置请求的URL地址。然后执行请求,获取请求的相关信息,并输出到页面上。最后关闭cURL资源。
通过使用curl_getinfo()函数,我们可以方便地获取cURL请求的相关信息,并根据需要进行处理和展示。无论是开发网页爬虫、进行 API 调用还是发送 HTTP 请求,了解和使用curl_getinfo()函数都是非常有用的。
综上所述,curl_getinfo()函数是一个非常实用的函数,它可以帮助我们获取cURL请求的相关信息,进而更好地控制和处理请求。在日常PHP开发中,对于使用cURL进行数据交互的场景,我们可以充分利用这个函数来提高代码的灵活性和可维护性。