如何用 PHP 创建一个 JSON?

How to create a JSON with PHP?

我想从 Json 文件中订购数据 PHP :

    $url = 'data.json';
    $json_string = file_get_contents($url);
    $json = json_decode($json_string);
    $rows = $json->values;
    
    foreach($rows as $row) {
    
    $jsonf .= json_encode(array(
     "$row[0]" => array(
        "name" => "$row[1]",
        "value" => "$row[2]",
        "conso" => "$row[3]", 
        "ml" => "$row[4]"
     )
    ), JSON_UNESCAPED_UNICODE);
}

不幸的是,使用这种方法,我得到了一个糟糕的结果:

{
    "DATA_01": {
        "name": "name_01",
        "value": "value_01",
        "conso": "conso_01",
        "ml": "ml_01"
    }
} {
    "DATA_02": {
        "name": "name_02",
        "value": "value_02",
        "conso": "conso_02",
        "ml": "ml_02"
    }
} {
    "DATA_03": {
        "name": "name_03",
        "value": "value_03",
        "conso": "conso_03",
        "ml": "ml_03"
    }
} 

我宁愿得到这样的东西:

{
    "DATA_01": {
        "name": "name_01",
        "value": "value_01",
        "conso": "conso_01",
        "ml": "ml_01"
    },
    "DATA_02": {
        "name": "name_02",
        "value": "value_02",
        "conso": "conso_02",
        "ml": "ml_02"
    },
    "DATA_03": {
        "name": "name_03",
        "value": "value_03",
        "conso": "conso_03",
        "ml": "ml_03"
    }
} 

谁能帮我解决我的问题。 非常感谢你能给我的所有帮助。

我不太确定你想要完成什么,但我认为是以下内容:

你得到这个结果是因为你将 json_encode 函数放在一个 for 循环中。把你所有的 detain 都放在一个数组中,然后对其进行编码。你的代码会变成这样:

foreach($rows as $row) {
    $data[] = $row[0];
}

json_encode($data)