2012-02-29 137 views
1

内我已经有了对象的列表:使用foreach循环访问对象foreach循环

0 => 
    object(stdClass)[550] 
     public 'node_title' => string 'Test' (length=4) 
     public 'nid' => string '1473' (length=4) 
     public 'node_language' => string 'nl' (length=2) 
    1 => 
    object(stdClass)[552] 
     public 'node_title' => string 'Test2' (length=5) 
     public 'nid' => string '1321' (length=4) 
     public 'node_language' => string 'nl' (length=2) 
    2 => 
    object(stdClass)[553] 
     public 'node_title' => string 'Test3' (length=5) 
     public 'nid' => string '602' (length=3) 
     public 'node_language' => string 'nl' (length=2) 

我遍历他们:

foreach($view->result as $key => $value) { 

} 

所以,如果每次foreach循环, 1个对象被提取,对吧?
但我怎样才能访问一个对象的项目?我尝试过0->nid$key->nid,...但没有任何工作......我该怎么做?

+0

'$值 - > nid' ---- – 2012-02-29 13:31:39

+1

看一看在['foreach'文档】(http://php.net/manual/en/control-structures.foreach.php) 。由于变量名称已经建议,“$ key”是数组元素的索引,而“$ value”是令人惊讶的值。如果你不知道使用哪一个,你可以简单地用'print_r($ key)'和'print_r($ value)'来检查它们。 – 2012-02-29 13:32:25

回答

2
foreach($view->result as $key => $value) { 
    // Here, $value is the current object 
    echo($value->node_title); 
} 
+0

哦,好吧。这是令人尴尬的......谢谢:) – Michiel 2012-02-29 13:33:32

+1

没问题:)每个人都会一次又一次地错过某些东西 – 2012-02-29 13:35:37