How to debug curl error messages in php

coldplay.xixi
Release: 2023-03-04 15:48:01
Original
4095 people have browsed it

How to debug curl error information in php: 1. Use the functions [curl_errno] and [curl_error] to return the HTTP error code and error category respectively; 2. Set [CURLOPT_VERBOSE] to true and set it to A file opened with fopen.

How to debug curl error messages in php

How to debug curl error messages in php:

The first method, First What can be used is the curl_errno and curl_error functions, which return the HTTP error code and error category respectively. For example:

<?php
$ch = curl_init(&#39;http://example.com/&#39;);
curl_exec($ch);
if (curl_errno($ch)) {
    echo &#39;Curl error: &#39; . curl_error($ch);
}
curl_close($ch);
?>
Copy after login

Secondly, if you need to get more detailed information, you can use the curl_getinfo function. For example:

<?php
$ch = curl_init(&#39;http://example.com/&#39;);
curl_setopt($ch, CURLINFO_HEADER_OUT, true);
curl_exec($ch);
if (!curl_errno($ch)) {
    print_r(curl_getinfo($ch));
}
curl_close($ch);
?>
Copy after login

After setting the CURLINFO_HEADER_OUT option, the array returned by the curl_getinfo function will contain the header information of the cURL request. To see the response header information, you can set the CURLOPT_HEADER option to true in curl_setopt.

curl_exec When the function is executed successfully, the response body information will be processed according to the value of the CURLOPT_RETURNTRANSFER option: if it is true, it will be returned as a string, if it is false, it will be directly output. The result is FALSE if execution fails. That is to say, if the execution fails (assuming it is a 400 error), the response text (which may contain more specific error information) cannot be seen from the result of the curl_exec function. There are two ways to see the response text. The first method is to set 400 as the success code. The example is as follows:

curl_setopt($ch, CURLOPT_FAILONERROR, false);
curl_setopt($ch, CURLOPT_HTTP200ALIASES, array(400));
Copy after login

The second method is to set CURLOPT_VERBOSE to true and CURLOPT_STDERR is set to a file opened with fopen. In this way cURL will record all interaction information with the server into this file.

Related learning recommendations:
php programming

(video)

The above is the detailed content of How to debug curl error messages in php. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template