如何将PHP数组转换为JSON数组?

时间:2018-10-30 15:19:47

标签: json

我有一个如下的数组。

[
    {
        "imageUrl": "url",
        "Text": "Lorem ipsum",
        "href": "#"
    },
    {
        "imageUrl": "url",
        "Text": "Lorem ipsum",
        "href": "#"
    },
    {
        "imageUrl": "url",
        "Text": "Lorem ipsum",
        "href": "#"
    }
]

如何将其转换为

{
"Title":
[
    {
        "imageUrl": "url",
        "Text": "Lorem ipsum",
        "href": "#"
    },
    {
        "imageUrl": "url",
        "Text": "Lorem ipsum",
        "href": "#"
    },
    {
        "imageUrl": "url",
        "Text": "Lorem ipsum",
        "href": "#"
    }
]
}

在PHP中。

3 个答案:

答案 0 :(得分:2)

只需将JSON字符串转换为PHP数据类型,添加新的title属性,然后使用json_encode()重新创建JSON字符串

<?php
$json = '[
    {
        "imageUrl": "url",
        "Text": "Lorem ipsum",
        "href": "#"
    },
    {
        "imageUrl": "url",
        "Text": "Lorem ipsum",
        "href": "#"
    },
    {
        "imageUrl": "url",
        "Text": "Lorem ipsum",
        "href": "#"
    }
]';
$new['title'] = json_decode($json);
$new_json = json_encode( $new );
echo $new_json;

结果

{"title":[
            {"imageUrl":"url","Text":"Lorem ipsum","href":"#"},
            {"imageUrl":"url","Text":"Lorem ipsum","href":"#"},
            {"imageUrl":"url","Text":"Lorem ipsum","href":"#"}
        ]   
}

答案 1 :(得分:0)

如果输入是数组:

$output = ['title' => $input];

如果输入是字符串:

$output = '{ "Title": ' . $input . '}';

答案 2 :(得分:0)

您可以从PHP库使用json_encode。 更多信息here