将空关联数组添加到数组中?

时间:2018-01-11 11:38:54

标签: php arrays

我有一个基于$inputArray订购的$arraySort,但在循环中,如果$key中存在$arraySort但我不想添加空关联数组在$inputArray

我的输入数组看起来像这样

    Array
(
    [period2] => Array
        (
            [art] => 171
            [design] => 167
            [math] => 155
            [bio] => 177
        )

    [period1] => Array
        (
            [art] => 194
            [design] => 188
            [math] => 187
            [bio] => 191
        )

    [period3] => Array
        (
            [art] => 182
            [design] => 173
            [math] => 174
            [bio] => 172
        )
)

我用

命令我的$ inputArray
  $arraySort = ['period1', 'period2', 'Break', 'period3'];
                $final_array = [];
                foreach ($arraySort as $arraySo) {
 if(array_key_exists($arraySo, $output)){
                    echo 'found';
                } else {
                    echo 'not found';//here empty assoc array??
                }
                    $final_array[$arraySo] = $output[$arraySo];
                }
                $temp = $final_array;

目前我的输出是

[period1] => Array
            (
                [art] => 194
                [design] => 188
                [math] => 187
                [bio] => 191
            )

        [period2] => Array
            (
                [art] => 171
                [design] => 167
                [math] => 155
                [bio] => 177
            )

        [Break] => 
        [period3] => Array
            (
                [art] => 198
                [design] => 192
                [math] => 197
                [bio] => 191
            )

但我喜欢添加一个空的assoc数组,所以break看起来像

[Break] => Array
            (
                [art] => 0
                [design] => 0
                [math] => 0
                [bio] => 0
        )

2 个答案:

答案 0 :(得分:1)

简单写:

$finalArray['Break'] => Array
(
    ['art'] => 0
    ['design'] => 0
    ['math'] => 0
    ['bio'] => 0
)

答案 1 :(得分:0)

if(isset($output[$arraySo]) &&  is_array($output[$arraySo]) ) {
$final_array[$arraySo] = $output[$arraySo];
} else {
$finalArray[$arraySo] => Array
(
    ['art'] => 0
    ['design'] => 0
    ['math'] => 0
    ['bio'] => 0
)
}