如何按给定格式格式化多维数组

4

我有一个包含一些键的数组,我需要做的是合并相同键的值,例如,键117和107的记分卡值应该像下面的输出数组一样合并。

$input_array = array (

38 => array
    (
        117 => array
            (
                'scorecard' => array
                    (
                        0 => 'q4'
                    ),

                'business_plan' => array
                    (
                        0 => 'q4'
                    )
            ),

        107 => array
            (
                'scorecard' => array
                    (
                        0 => 'q1'
                    ),

                'business_plan' => array
                    (
                        0 => 'q2'
                    )
            ),

    ),

53 => array
    (
        373 => array
            (            
                'scorecard' => array
                    (
                        0 => 'q4'
                    ),

                'business_plan' => array
                    (
                        0 => 'q1'
                    )
            ),

        110 => array
            (       
                'scorecard' => array
                    (
                        0 => 'q4',
                        0 => 'q3'
                    ),

                'business_plan' => array
                    (
                        0 => 'q4'
                    ),

                'marketing_plan' => array
                    (
                        0 => 'q3',
                        1 => 'q4'
                    )

            )

    ),

318 => array
    (
        2279 => array
            (             
                'scorecard' => array
                    (
                        0 => 'q4'
                    )
            )

    )

 );

输出数组将包含以下值:
 Array
 (
[38] => Array
    (
     [scorecard] => Array
                    (
                        [0] => q4
                        [1] => q1
                    )
     [business_plan] => Array
                    (
                        [0] => q4
                        [1] => q2
                    )            
    )

[53] => Array
    (

        [scorecard] => Array
            (
                 [0] => q4
                 [1] => q3
            )

        [business_plan] => Array
            (
                [0] => q1
                [0] => q4
            )
        [marketing_plan] => Array
            (
                [0] => q3
                [1] => q4
            )
    )

[318] => Array
    (
        [scorecard] => Array
            (
                [0] => q4
            )        
    )

 )

1
你尝试过什么吗? - Dave
是的,但我无法弄清如何比较键,例如117和118的记分卡键等。 - kapil
foreach($array as $key => $value) {} - Sougata Bose
foreach($score_board as $key1=>$val){ foreach($val as $key2=>$val2){// 在这里,我该如何合并相同键的值。 } } - kapil
@kapil:在同一个数组中不可能有相同的键:http://prntscr.com/deejz3 - Dave
显示剩余3条评论
1个回答

2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接