从PHP中获取数组中的元素

时间:2014-06-29 18:48:03

标签: php arrays json

使用以下数组,我将如何打印姓氏?

我希望将问题放在格式print_r($array['LastName'])中,这个数字很可能会改变。

$array = Array
(
    [0] => Array
        (
            [name] => FirstName
            [value] => John
        )

    [1] => Array
        (
            [name] => LastName
            [value] => Geoffrey
        )

    [2] => Array
        (
            [name] => MiddleName
            [value] => Smith
        )
)

3 个答案:

答案 0 :(得分:1)

我会首先规范化数组:

$normalized = array();
foreach($array as $value) {
  $normalized[$value['name']] = $value['value'];
}

然后你可以:

echo $normalized['LastName'];

答案 1 :(得分:0)

如果您不确定姓氏的存在位置,您可以编写一个函数来执行此操作...

function getValue($mykey, $myarray) {
    foreach($myarray as $a) {
        if($a['name'] == $mykey) {
            return $a['value'];
        }
    }
}

然后你可以使用

print getValue('LastName', $array);

答案 2 :(得分:0)

这个数组不容易访问,因为它包含几个具有相同键的数组。如果您知道值的位置,则可以使用数组的位置来访问数据,例如$array[1][value]。如果你不知道你需要的数据的位置,你将不得不循环遍历数组并检查它在哪里..有几个解决方案可以做到这一点,例如:

 `foreach($array as $arr){
     (if $arr['name'] == "lastName") 
      print_r($arr['value']
  }`