doujiaci7976 2014-07-26 09:14
浏览 31
已采纳

当数组为null时,PHP没有对象错误

I have a RSS feed URL and I am using following PHP function to extract values from it.

$xml = simplexml_load_file($url);

Its working perfect when the $url generates some results. And I am using count() function to count the length of array thats extracted from RSS feeds.

$length=sizeof($xml->rs[0]->r);

But when there is no result in RSS it gives me error

Trying to get property of non-object in /home/****/public_html/index.php on line 5 

So is there a way to echo a message if there are no results in RSS feed URL.

And when i do print_r($xml) ob no results $xml , i get

SimpleXMLElement Object ( [@attributes] => Array ( [type] => noresults [code] => 1.1 ) [title] => SimpleXMLElement Object ( ) [subtitle] => SimpleXMLElement Object ( ) [text] => SimpleXMLElement Object ( ) [base] => SimpleXMLElement Object ( ) ) )

I searched everywhere and found no solution.. Thanks for your help.

  • 写回答

2条回答 默认 最新

  • doukang1962 2014-07-26 09:28
    关注
    $xml = simplexml_load_file($url);
    
    if ($xml && property_exists($xml, 'rs') && is_array($xml->rs) && isset($xml->rs[0]) && is_object($xml->rs[0]) && property_exists($xml->rs[0], 'r')) {
        // do something with $xml->rs[0]->r
    } else {
        echo "Not available to access $xml->rs[0]->r";
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 R语言卸载之后无法重装,显示电脑存在下载某些较大二进制文件行为,怎么办
  • ¥15 java 的protected权限 ,问题在注释里
  • ¥15 这个是哪里有问题啊?
  • ¥15 关于#vue.js#的问题:修改用户信息功能图片无法回显,数据库中只存了一张图片(相关搜索:字符串)
  • ¥15 texstudio的问题,
  • ¥15 spaceclaim模型变灰色
  • ¥15 求一份华为esight平台V300R009C00SPC200这个型号的api接口文档
  • ¥15 字符串比较代码的漏洞
  • ¥15 欧拉系统opt目录空间使用100%
  • ¥15 ul做导航栏格式不对怎么改?