使用密钥名称从关联数组中获取值

问题描述:

我有一个对象数组,我想通过键访问值。使用密钥名称从关联数组中获取值

<?php 

    $name = [ 
       [ 
        'firstname' => 'John', 
        'lastname' => 'Doe', 
        'middlename' => 'Bray' 
       ], 
       [ 
        'firstname' => 'John2', 
        'lastname' => 'Doe2', 
        'middlename' => 'Bray2' 
       ]   
    ]; 

    $count = count($name); 
    for($i = 0; $i < $count; $i++){ 
     $cell = $name[$i]; 
     echo $cell->lastname; 
     echo $cell->middlename; 
    } 
?> 

我认为最后2行会做,但我得到一个错误! 我需要做什么o使它工作?

问候, 埃利奥费尔南德斯

+0

我不明白你问什么,你需要什么 –

+1

$ cell ['lastname']而不是$ cell-> lastname; – IsThisJavascript

+0

也可以使用php函数foreach查找。 – TimBrownlaw

$cell是一个关联数组,而不是一个对象。访问关联数组中元素的语法是$arr['key']。访问对象属性的语法是$obj->prop

所以,像这样使用:

echo $cell['lastname']; 
echo $cell['middlename']; 
+0

感谢大家的回答和建议。 –

变化

echo $cell->lastname; 
echo $cell->middlename; 

echo $cell['lastname']; 
echo $cell['middlename']; 

变化

echo $cell->lastname; 

echo $cell['lastname']; 

您正在玩数组而不是对象。

此外,您可以使用foreach循环而不是for,因为您不必计数并循环计数。

foreach($name as $cell){...