PHP cURL - 解析服务器响应

Lev*_*hik 1 php xml formatting curl

我不是程序员,我需要你的帮助。

我有一个返回服务器响应的 cURL 函数 -成功错误

400 - 错误响应:

<?xml version="1.0" encoding="UTF-8"?><statusCode>400</statusCode>
<errorMessage>In order to be contacted, please enter a valid phone number.</errorMessage>
Run Code Online (Sandbox Code Playgroud)

200 - 成功响应:

<?xml version="1.0" encoding="UTF-8"?>
<statusCode>200</statusCode>
Run Code Online (Sandbox Code Playgroud)

我需要根据 200 或 400 StatusCode 验证响应。

如果状态为 200,则照常进行。

如果状态是 400(错误),那么我只需要提取错误消息(去掉所有标签)和 ECHO 错误消息(在上面的例子中 -为了被联系,请输入一个有效的电话号码。

我该怎么做?请帮忙。

谢谢你。

卷曲代码:

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$result = curl_exec($ch);
curl_close($ch);
Run Code Online (Sandbox Code Playgroud)

Ale*_*lex 7

我仍然不确定您到底在寻找什么,但您可以尝试:

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, 1);

$result = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if($httpCode == 400) {
  /* Handle 400 here. */
  echo "Error: " . curl_error($ch);
}


$header_size = curl_getinfo($ch, CURLINFO_HEADER_SIZE);
$header = substr($result , 0, $header_size);
$body = substr($result , $header_size);
 var_dump($header);
 var_dump($body);

curl_close($ch);
Run Code Online (Sandbox Code Playgroud)

如果有任何问题,欢迎您