2013-02-21 5 views
3

Как относительный новичок в PHP У меня возникают проблемы с доступом к различным элементам в массиве. Мне нужно получить доступ к двум типам массивов. Первый пример отлично работает, хотя второй вызывает ошибку.Проблемы с доступом к двум типам массивов

Любые указатели будут оценены по достоинству.

PS. Я исхожу из фона JavaScript, VBScript, чтобы понять концепцию массива. Ура!

Следующий пример кода работает

// Below is a dump of $dataArray 
array (size=4) 
    0 => 
    object(SimpleXMLElement)[13] 
     public '@attributes' => 
     array (size=15) 
      'campaignID' => string '215999956' (length=9) 

// Below writes out $dataArray 
     foreach($dataArray as $val) { 
      print $val['campaignID']; 
      } 

В следующем примере кода не работает

// Below is a dump of $dataArray 
array (size=4) 
    0 => 
    object(AdGroup)[73] 
     public 'campaignId' => string '112520126' (length=9) 

// Below writes out $dataArray 
     foreach($dataArray as $val) { 
      print $val['campaignID']; 
      } 

ответ

2

В вашем втором примере вы итерация массив с объектами, так что вы должны получить доступ к вашей собственности с обозначением стрелки вместо того, чтобы пытаться получить к нему доступ, как массив:

foreach($dataArray as $val) { 
    print $val->campaignID; 
} 
+0

Большое спасибо за помощь. Очень признателен! – Boomfelled

+0

Добро пожаловать! – acme

3

Первый - это массив, а второй - объект. Чтобы получить доступ к агитационной кампании во второй версии, вам нужно будет

print $val->campaignID 
Смежные вопросы