对于我的生活,我无法弄清楚如何访问这个数组的值。每个示例stdClass
对象都有某种类型的值。如果我尝试例如$obj->0->0->city;
,我会收到错误。
有人可以告诉我如何访问[city] => toronto
甚至[date_created] => 2011-05-03 14:33:58
的示例吗?
我也试过这个没有运气。
$object = $buy[1];
$title = $object->title[0];
echo "$title";
由于
这就是api给我的。
stdClass Object
(
[id] => 1
[name] => toronto
[date_modified] => 2011-03-08 13:07:10
[tax_rate_provincial] =>
)
<br/>
Array
(
[0] => stdClass Object
(
[0] => stdClass Object
(
[id] => 28131844
[full_date] => 20110506
[end_date] => 20110511
[city] => toronto
[saved] => 1651
[discount_percentage] => 52
[deal_option] => Array
(
[0] => stdClass Object
(
[id] => 2600
[title] =>
[date_modified] => 0000-00-00 00:00:00
[date_created] => 2011-05-03 14:33:58
[value] => 3150
[price] => 1499
[deal_id] => 28131844
[is_default] => 0
)
)
[options] =>
[option_quantity] =>
[option_remaining] =>
[purchase_limit] => 1
[gift_limit] => 0
答案 0 :(得分:2)
有一种特殊的邪恶语法来绕过数字对象属性:
print $obj->{'0'}->{'0'}->city;
是正确的语法,等同于您已经确定的路径。
你的第二个例子是一个数组,所以它可能是:
print $array[0]->{'0'}->city;
替代方案总是只在foreach
超过特定级别 - 同样适用于对象和数组。