大多数情况下,URL会返回一些信息,但是当没有返回任何信息时,我想返回一个字符串'Empty Result',所以不要将空字符串传递给SimpleXmlElement函数,因为这似乎会产生错误
如何检查Curl的空/空响应?
// Get cURL resource
$curl = curl_init();
// Set some options - we are passing in a useragent too here
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => $searchString,
CURLOPT_USERAGENT => 'Codular Sample cURL Request',
CURLOPT_FOLLOWLOCATION, true
));
// Send the request & save response to $resp
$result = curl_exec($curl);
// Close request to clear up some resources
curl_close($curl);
if($result === null)
{
return 'Empty Result';
}
$doc = new SimpleXmlElement($result, LIBXML_NOCDATA);
答案 0 :(得分:3)
尝试:
if(!$result || strlen(trim($result)) == 0)
{
return 'Empty Result';
}
如果失败或遇到空白响应,将返回“空结果”。
或者,您可以处理XML错误like so。
答案 1 :(得分:1)
试一试
// Get cURL resource
$curl = curl_init();
// Set some options - we are passing in a useragent too here
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => $searchString,
CURLOPT_USERAGENT => 'Codular Sample cURL Request',
CURLOPT_FOLLOWLOCATION, true
));
// Send the request & save response to $resp
$result = curl_exec($curl);
// Close request to clear up some resources
curl_close($curl);
if( $result === null || $result == FALSE || $result == '' )
{
return 'Empty Result';
}
$doc = new SimpleXmlElement($result, LIBXML_NOCDATA);