如何遍历 PHP 中的 JSON 输出并仅选择第二个键 => 值?

我如何遍历这个 JSON 输出并将“hersteller”值放入一个数组并打印出来?我只需要一个 for 循环块还是一个带有 $i 和 $j 的嵌套 for 循环?


[

    {

        "id": 2,

        "hersteller": "bmw",

        "modell": "{modell}",

        "baujahr": "2015",

        "artikelname": "nockenwelle",

        "ekpreis": 149,

        "verkpreis": 349,

        "mengeverfuegbar": 8

    },

    {

        "id": 3,

        "hersteller": "audi",

        "modell": "{modell}",

        "baujahr": "2018",

        "artikelname": "kotfluegel",

        "ekpreis": 89,

        "verkpreis": 249,

        "mengeverfuegbar": 4

    },

    {

        "id": 4,

        "hersteller": "mercedes",

        "modell": "{modell}",

        "baujahr": "2019",

        "artikelname": "getriebe",

        "ekpreis": 299,

        "verkpreis": 859,

        "mengeverfuegbar": 3

    }

]

谢谢 :)


泛舟湖上清波郎朗
浏览 140回答 3
3回答

莫回无

$arr = json_decode($str, true);  //converts JSON string into array$arr_hersteller = array_column($arr, 'hersteller'); //returns an array containing "hersteller" values

冉冉说

在“codeit”的帮助下,我做了以下解决了我的问题:$output = array();$urlContents = file_get_contents(#Here is a URL to get the JSON value#);$bestandspflegeArray = json_decode($urlContents, true);$hersteller = array_column($bestandspflegeArray, 'hersteller');for ($i=0; $i < count($hersteller); $i++) {&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $output[] = $hersteller[$i];&nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; }echo json_encode($output);

POPMUISE

<?php$json = '[{"id": 2,"hersteller": "bmw","modell": "{modell}","baujahr": "2015","artikelname": "nockenwelle","ekpreis": 149,"verkpreis": 349,"mengeverfuegbar": 8},{"id": 3,"hersteller": "audi","modell": "{modell}","baujahr": "2018","artikelname": "kotfluegel","ekpreis": 89,"verkpreis": 249,"mengeverfuegbar": 4},{"id": 4,"hersteller": "mercedes","modell": "{modell}","baujahr": "2019","artikelname": "getriebe","ekpreis": 299,"verkpreis": 859,"mengeverfuegbar": 3}]';//convert json to array json_decode(array, true)&nbsp;//this true mean convert it to array instead of object$array = json_decode($json, true);//create new empty array$hersteller = array();//iterateforeach($array as $key => $val){&nbsp; if(isset($val['hersteller'])){&nbsp; &nbsp; $hersteller[] = $val['hersteller'];&nbsp;&nbsp;&nbsp; }}echo "<pre>";//print the arrayprint_r($hersteller);
打开App,查看更多内容
随时随地看视频慕课网APP