2014-06-13 149 views
0

我想從一個數組如何從數組中檢索對象?

我試圖用,但沒有得到

$api_response_decode['data']->stdClass->sales->stdClass 

這裏檢索對象的元素是我的數組

[data] => stdClass Object 
    (
     [sales] => stdClass Object 
      (
       [clothing] => 2 
       [men] => 0 
       [children] => 4 
      ) 

    ) 

我想

[clothing] 
[men] 
[children] 
+0

'stdClass'是對象類型,而不是屬性名稱.... – user193130

回答

2

您的示例中不需要stdClass

爲了使這個對象:

$api_response_decode['data'] 

要獲得銷售對象:

$api_response_decode['data']->sales 

得到的,比如說服裝:

$api_response_decode['data']->sales->clothing 
+0

仍然得到ANNOT使用對象類型爲stdClass的數組爲:( – user2046638

+0

@ user2046638如果$ api_response_decode是一個對象,您也必須將它看作一個:'$ api_response_decode-> data' – Jim

1

爲$ api_response_decode對象或數組?你最近怎麼樣?

但是,您可以使用get_object_vars檢索銷售項目。

$items=get_object_vars($api_response_decode->data->sales); 
var_dump($items); 

打印

array(3) { 
    ["clothing"]=> int(2) 
    ["men"]=> int(0) 
    ["children"]=> int(4) 
} 

編輯:看來$api_response_decode是一個對象,所以我相應的修改。

1

stdClass是一個類型,而不是一個值。

$api_response_decode['data']->sales->clothing 

這個主題可以給你什麼stdClass的是更多的信息如何使用它:What is stdClass in PHP?

+0

仍然不能使用stdClass類型的對象作爲數組:( – user2046638

+0

Give $ api_response_decode的var_dump()也許數據也是一個對象而不是數組。 – djidi