【问题标题】:How to loop through these values in PHP [duplicate]如何在 PHP 中遍历这些值 [重复]
【发布时间】:2016-02-09 08:45:12
【问题描述】:

如何在 PHP 中循环 json_decode($json_emp) 输出并获取值?

    $array_emp = json_decode($json_emp);
    var_dump( $array_emp)

        {"info":[{"id":"10","name":"employee1"},{"id":"11","name":"employee2"},{"id":"12","name":"emplyee3"}]}

需要 find 获取 ID 和 name 的单独值。这是数组。

$array_emp = json_decode($json_emp,true);

Array
(
    [info] => Array
        (
            [0] => Array
                (
                    [id] => 10
                    [name] => employee1
                )

            [1] => Array
                (
                    [id] => 11
                    [name] => employee2
                )

            [2] => Array
                (
                    [id] => 12
                    [name] => emplyee3
                )

        )

)

这里是对象;

stdClass Object
(
    [info] => Array
        (
            [0] => stdClass Object
                (
                    [id] => 10
                    [name] => employee1
                )

            [1] => stdClass Object
                (
                    [id] => 11
                    [name] => employee2
                )

            [2] => stdClass Object
                (
                    [id] => 12
                    [name] => emplyee3
                )

        )

)

请让我知道如何遍历这些并获取值。尝试了很多并感到困惑。

【问题讨论】:

标签: php


【解决方案1】:

如果你想使用对象,试试这个:

foreach ($array_tmp->info as $emp)
{
    echo $emp->name;
}

对于数组:

foreach  ($array_tmp['info'] as $emp)
{
    echo $emp['name'];
}

【讨论】:

    【解决方案2】:

    使用这个

    $json = '{"info":[{"id":"10","name":"employee1"},{"id":"11","name":"employee2"},{"id":"12","name":"emplyee3"}]}';
    
    $json = json_decode($json, TRUE);
    foreach($json['info'] as $info){
        echo 'ID: '.$info['id'].PHP_EOL;    
        echo 'Name: '.$info['name'].PHP_EOL;    
    }
    

    以上代码输出

    ID: 10
    Name: employee1
    ID: 11
    Name: employee2
    ID: 12
    Name: emplyee3
    

    DEMO

    如果您处理的是object 而不是array

    $json = json_decode($json);
    foreach($json->info as $info){
        echo 'ID: '.$info->id.PHP_EOL;  
        echo 'Name: '.$info->name.PHP_EOL;  
    }
    

    将输出与上面相同的内容。

    DEMO

    【讨论】:

      猜你喜欢
      • 2019-07-20
      • 2020-11-03
      • 1970-01-01
      • 2012-09-15
      • 1970-01-01
      • 2017-02-03
      • 2020-05-15
      • 2014-07-26
      • 2010-11-01
      相关资源
      最近更新 更多