【问题标题】:if no results from xml api call then如果 xml api 调用没有结果,那么
【发布时间】:2013-04-04 21:54:49
【问题描述】:

我正在运行一个基本的 api 调用,它返回一个 xml 文件..我检查数据并将它们设置为等于变量,然后 echo..所有工作正常,除非没有结果,然后它只是空白。如何添加 if 语句来检查 api 调用是否返回任何结果?

 if($url_headers[0] == 'HTTP/1.1 200 OK' && (!empty($searchCode))) {
        $xml = simplexml_load_file($searchCode);
foreach ($xml->result->result as $result):
    $cake=$result->{'cakename'};
    $icecream=$result->{'icecreamname'};


   echo "<ul class='cakes' >";
        echo "<li>$cake and $icecream</li>";
    echo "</ul>";

【问题讨论】:

  • 大概$searchCode是你的api调用的结果吧?您已经获得了!empty() 来检查是否有任何返回...或者无论成功/失败,api 是否都会返回一些东西?

标签: php xml api


【解决方案1】:

您正在搜索函数property_exists()。像这样使用它:

$xml = simplexml_load_file($searchCode);
if(!$xml 
  || !property_exists($xml, 'result')
  || !property_exists($xml->result, 'result')) {
    die('no results');
}

当然你可以详细说明这个有更详细的错误信息。

【讨论】:

    猜你喜欢
    • 2018-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多