我有一个对象,我希望从中获取一段数据,对象看起来像这样,
Product Object
(
[name] => Simon Test Cup
[code] => 123456789
[category_id] => 3
[range_id] => 26
[price] => 10.00
[price_logo_add] => 0.25
[image_id] => 846
[rank] =>
[special_offer] => N
[cartProps] => Array
(
)
[section] =>
[vatPercentage] => 17.5
[id] => 551
[date_created] => 2010-05-25 12:46:57
[last_updated] => 2010-05-25 14:10:48
[user_id_updated] => 0
[_aliases] => Array
(
[id] => 551
[date_created] => 2010-05-25 12:46:57
[date_updated] => 2010-05-25 14:10:48
[user_id_updated] => 0
[name] => Simon Test Cup
[code] => 123456789
[category_id] => 3
[range_id] => 26
[price] => 10.00
[price_logo_add] => 0.25
[image_id] => 846
[range_image_id] => 848
[main_image_id] => 847
[rank] =>
[special_offer] => N
)
[_default] => Array
(
[special_offer] => N
)
[_related] => Array
(
[_related] => Array
(
[range] => stdClass Object
(
[key] => range
[group] => _related
[foreignKey] => range_id
[indexName] => id
[tableName] => cc_range
[objectName] => Range
[userFieldlyColName] => name
[criteria] => id='{%range_id%}'
[sqlPostfix] =>
[populateOnLoad] =>
[objects] => Array
(
[26] => Range Object
(
[name] => Shot glasses
[url_name] => shot-glasses
[description] => Personalized shot glasses make great commemorative gifts, souvenirs and wedding favours. Just select your favourite shape and send us a customization form with your logo. See our glassware sale page for info on free logo origination.
[leader] => Customized shot glasses make great commemorative gifts, promotional items and wedding favours. Individual gift boxes are available so you can give the glasses away easily.
[category_id] => 3
[site_id_csv] =>
[image_id_main] => 565
[image_id_thumb] => 566
[rank] =>
[site] => main
[id] => 26
[date_created] => 2008-05-18 21:39:52
[last_updated] => 2009-02-03 13:49:10
[user_id_updated] => 0
[_aliases] => Array
我想从[range] = stdClass Object
答案 0 :(得分:3)
你可以说$ object-> _related [“_ related”] [“range”],但是这个结构可能是一个对象,它有你可能想要的东西的访问器。你显然不打算担心这件事的内部结构。
答案 1 :(得分:2)
$product->_related["_related"]["range"]->key
但我不确定我是否理解
答案 2 :(得分:1)
正如您所看到的,您的Product
对象具有属性range_id
:
Product Object
(
[name] => Simon Test Cup
[code] => 123456789
[category_id] => 3
[range_id] => 26 // <--- here!
[price] => 10.00
...
所以你应该可以通过以下方式获取ID:
$object->range_id
但可能,Product
和Range
类定义了允许您访问这些信息的方法,您应该使用它们。您只需阅读文档如何使用它们。
答案 3 :(得分:0)
假设Felix的回答不起作用(可能很好),我猜测_related
字段受到保护。在这种情况下,该类中应该有一个访问器方法,以便您获取相关对象。请在对象上使用get_class_methods()
,然后使用可用的方法编辑帖子。