繁体   English   中英

在JSON JavaScript中转换数组-相同的键

[英]Convert array in json javascript - same key

我有一个PHP文件,其中有一个文件夹的文件名,我现在的目标是将该数组输出为JSON。

我的数组如下所示:

Array ( 
    [0] => teste3.pdf 
    [1] => teste2.pdf 
    [2] => teste.pdf 
    [3] => .. 
    [4] => . 
)

我想要这样的JSON结构:

{
    "Documents": [
        {
            "NameDoc": "teste3.pdf"
        },
        {
            "NameDoc": "teste2.pdf"
        },
        {
            "NameDoc": "teste.pdf"
        },
     ]
}

我尝试使用json_encode但仅此一项并不能满足我的需求。

假设文件数组称为MyArr

const obj = {
  Documents: MyArr.map(file => ({ NameDoc: file }))
}

现在,使用obj做任何您想做的事。

let myArray = [
  'teste3.pdf',
  'teste2.pdf',
  'teste.pdf'
];
let obj = {
  Documents: myArray.map( item => ({ NameDoc: item }))
};
let jsonString = JSON.stringify(obj);

如果您使用PHP创建数据,则从源头上解决问题很有意义:

$arr = ['teste3.pdf', 'teste2.pdf', 'teste.pdf'];

$map = array_map(function($name){ 
    return ['NameDoc' => $name]; 
}, $arr);

echo json_encode([
    'Documents' => $map
]);

»小提琴

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM