首先,我想我已经尝试了所遇到的所有解决方案,但仍然存在问题......
facebookResponse Object
(
[__construct:facebookResponse:private] =>
[__resp] => stdClass Object
(
[data] => stdClass Object
(
[id] => 00000000000
[name] => Random.User
[first_name] => Random
[last_name] => User
[link] => http://www.facebook.com/Random.User
[username] => Random.User
[birthday] => 11/10/1980
[gender] => male
[email] => xxxx@Random.User.com
[timezone] => -7
[locale] => en_US
[verified] => 1
[updated_time] => 2011-08-22T02:56:33+0000
)
[code] => 200
[time] => 0.600512
[length] => 386
[type] => text/javascript; charset=UTF-8
)
)
以上是输出对象的示例。我正在寻找细节,其中一些有时不存在。如果它们不存在,我只想抓住这个事实,将它标记为我的数据库“无”,然后转到下一个。对我来说,我不是很幸运。无论我如何接近它,我都会遇到错误。
我是否执行isset()!isset()empty()!empty()或上面的某些组合尝试捕获它,如空,null,未定义,空白或者甚至不存在。
示例您将看到上面的示例输出中没有location-> name对象。所以我最新的attemt(s)来抓住它而不是
if((isset($fb_result->location->name))
AND(!empty($fb_result->location->name))
AND(trim($fb_result->location->name) !== ""))
{
$currenthome = $fb_result->location->name;
}
else
{
$currenthome = "none";
}
我上面的错误是“未定义的属性:stdClass :: $ location”,无论我如何抓住它,我仍然会得到同样的东西。
答案 0 :(得分:1)
您可能需要查看Reflection API
。
答案 1 :(得分:1)
您需要首先检查“位置”属性,然后再深入
if(!empty($fb_result->location) && !empty($fb_result->location->name))
$currenthome = $fb_result->location->name;
else
$currenthome = 'none';