繁体   English   中英

PHP-创建多维数组

[英]PHP - Create a multidimensional array

有什么办法可以从PHP中一些现有的数组创建此数组

Array(
[in-door] => Array
    (
        [tv] => Array
            (
                [views] => 123
                [likes] => 234
                [comments] => 345
                [shares] => 456
            )

        [sofa] => Array
            (
                [views] => 567
                [likes] => 789
                [comments] => 890
                [shares] => 901
            )
    ),
[out-door] => Array
        (
        [chair] => Array
                (
                    [views] => 109
                    [likes] => 98
                    [comments] => 987
                    [shares] => 876
                )

        [bench] => Array
            (
                [views] => 765
                [likes] => 654
                [comments] => 543
                [shares] => 432
            )

    )

)

我尝试过的

$list_categories = array("in-door");
$list_items = array(array("tv", "sofa"));
$list_items_info = array(array(array(
         "views" => 123,
         "likes" => 234,
         "comments" => 345,
         "shares" => 456
          ),
    array(
         "views" => 123,
         "likes" => 234,
         "comments" => 345,
         "shares" => 456
         )
            ));
        print_r(array_combine($list_categories, array_combine($list_items, $list_items_info)));

没给我带来我的期望。

除此之外,最有效的方式是获取商品的观看次数/赞数。 我应该使用数组还是json对象?

$list_categories = array("in-door");
$list_items = array("tv", "sofa");
$list_items_info = array(
    "views" => 123,
    "likes" => 234,
    "comments" => 345,
    "shares" => 456
);

$array = array();

foreach ($list_categories as $cat) {
    foreach ($list_items as $item) {
        foreach ($list_items_info as $itemname => $iteminfo) {
            $array[$cat][$item][$itemname] = $iteminfo;
        }
    }
}

输出:

Array
(
    [in-door] => Array
        (
            [tv] => Array
                (
                    [views] => 123
                    [likes] => 234
                    [comments] => 345
                    [shares] => 456
                )

            [sofa] => Array
                (
                    [views] => 123
                    [likes] => 234
                    [comments] => 345
                    [shares] => 456
                )

        )

)

在线演示

暂无
暂无

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

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