0

试图使这种代码和平工作。但我得到了致命错误。我不知道如何解决这个问题。任何帮助将不胜感激。错误是针对这一行的: $counts = $sxml-> children('http://a9.com/-/spec/opensearchrss/1.0/');

// generate feed URL
      $feedURL = "http://gdata.youtube.com/feeds/api/videos/-/{$q}
      ?orderby=viewCount&max-results={$i}";

      // read feed into SimpleXML object
      $sxml = simplexml_load_file($feedURL);

      // get summary counts from opensearch: namespace
      $counts = $sxml-> children('http://a9.com/-/spec/opensearchrss/1.0/');
      //$counts = $sxml-> children('http://www.opensearch.org/Specifications/OpenSearch/1.1');

      $total = $counts->totalResults;
      $startOffset = $counts->startIndex; 
      $endOffset = ($startOffset-1) + $counts->itemsPerPage;
4

2 回答 2

3

simplexml_load_file失败了。它在失败时返回 false(无对象)。

您的服务器无法访问该 URL,或者它返回了无效的 XML。

手册

返回 SimpleXMLElement 类的对象,其属性包含 XML 文档中保存的数据,如果失败则返回 FALSE。

于 2012-11-22T08:39:54.477 回答
1

为避免出现此错误,您应该使用如下条件:

if(false !== $sxml){
      //your code
}
于 2018-05-10T09:43:53.743 回答