2012-01-16 95 views
0

我在想如何才能訪問對象內的值,比如'backpackPosition'?我猜我必須把它放在某種foreach循環中,但我不知道如何獲取這些值。先謝謝了!php訪問對象鍵/值

TF2Inventory Object 
(
[fetchDate] => 1234541231 
[items] => Array 
(
    [60] => TF2Item Object 
     (
      [equipped] => Array 
       (
        [scout] => 1 
        [sniper] => 1 
        [soldier] => 1 
        [demoman] => 1 
        [medic] => 1 
        [heavy] => 1 
        [pyro] => 1 
        [spy] => 1 
       ) 

      [attributes] => Array 
       (
        [0] => stdClass Object 
         (
          [name] => custom employee number 
          [class] => set_employee_number 
          [value] => 0 
         ) 

        [1] => stdClass Object 
         (
          [name] => cannot trade 
          [class] => cannot_trade 
          [value] => 1 
         ) 

       ) 

      [backpackPosition] => 61 
      [className] => tf_wearable 
      [count] => 1 
      [defindex] => 170 
      [id] => 535518002 
      [level] => 20 
      [name] => Primeval Warrior 
      [quality] => unique 
      [slot] => misc 
      [tradeable] => 
      [type] => Badge 
     ) 

    [43] => TF2Item Object 
     (
      [equipped] => Array 
       (
        [scout] => 0 
        [sniper] => 0 
        [soldier] => 0 
        [demoman] => 0 
        [medic] => 0 
        [heavy] => 0 
        [pyro] => 0 
        [spy] => 0 
       ) 

      [attributes] => Array 
       (
        [0] => stdClass Object 
         (
          [name] => cannot trade 
          [class] => cannot_trade 
          [value] => 1 
         ) 

       ) 

      [backpackPosition] => 44 
      [className] => tf_wearable 
      [count] => 1 
      [defindex] => 471 
      [id] => 535518003 
      [level] => 50 
      [name] => Proof of Purchase 
      [quality] => unique 
      [slot] => head 
      [tradeable] => 
      [type] => Hat 
     ) 

    [42] => TF2Item Object 
     (
      [equipped] => Array 
       (
        [scout] => 1 
        [sniper] => 1 
        [soldier] => 1 
        [demoman] => 1 
        [medic] => 1 
        [heavy] => 1 
        [pyro] => 1 
        [spy] => 1 
       ) 

      [attributes] => 
      [backpackPosition] => 43 
      [className] => tf_wearable 
      [count] => 1 
      [defindex] => 278 
      [id] => 541628464 
      [level] => 31 
      [name] => Horseless Headless Horsemann's Head 
      [quality] => unique 
      [slot] => head 
      [tradeable] => 
      [type] => Hat 
     ) 

    [59] => TF2Item Object 
     (
      [equipped] => Array 
       (
        [scout] => 0 
        [sniper] => 0 
        [soldier] => 0 
        [demoman] => 0 
        [medic] => 0 
        [heavy] => 0 
        [pyro] => 0 
        [spy] => 0 
       ) 

      [attributes] => Array 
       (
        [0] => stdClass Object 
         (
          [name] => cannot trade 
          [class] => cannot_trade 
          [value] => 1 
         ) 

       ) 

      [backpackPosition] => 60 
      [className] => tf_wearable 
      [count] => 1 
      [defindex] => 115 
      [id] => 548155039 
      [level] => 10 
      [name] => Mildly Disturbing Halloween Mask 
      [quality] => unique 
      [slot] => head 
      [tradeable] => 
      [type] => Holiday Hat 
     ) 
+0

[實施例](http://sscce.org/)應當被最小化,並呈現爲代碼,而不是可變轉儲(這是不可用的)。至於訪問屬性,你的問題是不明確的。你的意思是,當名稱可能有所不同時,你如何訪問它們?爲什麼你不能使用'$ inventory-> items [0] - > backpackPosition'? – outis 2012-01-16 20:03:58

回答

2
foreach($inventory_object->items as $item) 
{ 
    $item->backpackPosition; 
} 
+0

這是直接訪問。 OP也引用了'foreach'。 – 2012-01-16 19:51:40

+0

非常感謝! – nk510 2012-01-16 19:55:36