PHP-将xml解析为嵌套json

PHP-将xml解析为嵌套json,php,nested,parsexml,Php,Nested,Parsexml,我试图用php将xml解析为嵌套的json结构 这是我的测试脚本: $json_drives = array(); foreach($drives->DR as $dr){ $current_drive = array(); $current_drive['id'] = $dr->ID; $current_drive['name'] = $dr->NAME->D; $json_drives[] = $current_drive; } ec

我试图用php将xml解析为嵌套的json结构

这是我的测试脚本:

$json_drives = array();

foreach($drives->DR as $dr){
    $current_drive = array();
    $current_drive['id'] = $dr->ID;
    $current_drive['name'] = $dr->NAME->D;
    $json_drives[] = $current_drive;
}
echo("Finished");

// Parse and save
$f = json_encode($json_drives);
file_put_contents('test12345.json', $f);
我得到一个这样的结构:

[
    {
        "id": {
            "0": "1"
        },
        "name": {
            "0": "Name 1"
        }
    },
    {
        "id": {
            "0": "2"
        },
        "name": {
            "0": "Name 2"
        }
    },
    // ...
 ]
但是我不希望键“id”和“name”被嵌套。应该是这样的:

[
    {
        "id": "1"
        "name": "Name 1"
    },
    {
        "id": "2"
        "name": "Name 2"
    },
    // ...
]
我该如何处理呢?

假设JSON的“驱动”对象始终具有以下结构:

"id": {
    "0": "Some ID"
},
"name": {
    "0": "Some name"
}
您可以使用:

$current_drive['id'] = ((array) $dr->ID)[0];
$current_drive['name'] = ((array) $dr->NAME->D)[0];

您是否有要测试的XML示例?如果您向我们展示您正在处理的XML示例,将会有所帮助