【问题标题】:create stdclass with several arrays用几个数组创建标准类
【发布时间】:2013-04-10 08:01:35
【问题描述】:

我正在尝试创建包含多个数组的新 stdclass,然后将其转换为 json 数组,例如我有这个数组:

$my_arr = array (name=>myname1, adress=>myadd1, phone=>myphone1);
$my_arr2 = array (name=>myname2, adress=>myadd2, phone=>myphone2);

我想将它们合并到 STDClass,这是我尝试过的:

$foo = new stdClass();
$foo->item1 = array();

foreach ($my_arr as $key => $value) {
$foo->item1[$key] = $value;
}

print_r($foo);
echo json_encode($foo);

这里的问题是我只使用第一个数组,结果应该是:

"items":[
    [
        {
            "name":"myname1",
            "adress":"myadd1",
            "phone":"myphone1"
        },
        {
            "name":"myname2",
            "adress":"myadd2",
            "phone":"myphone2"
        },
        {
            "name":"myname3",
            "adress":"myadd3",
            "phone":"myphone3"
        }
    ]
],

非常感谢!

【问题讨论】:

标签: php arrays foreach while-loop stdclass


【解决方案1】:

您不需要使用stdClass,只需使用数组即可。

$foo = array('items' => array($my_arr, $my_arr2));
echo json_encode($foo);

当然你也可以使用stdClass

$foo = new stdClass();
$foo->items = array($my_arr, $my_arr2);
echo json_encode($foo);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-16
    • 1970-01-01
    • 2013-01-28
    • 2017-08-20
    • 1970-01-01
    相关资源
    最近更新 更多