как я могу сделать два массива похожи друг на друга по длине? - PullRequest
0 голосов
/ 18 апреля 2020

У меня есть два массива, и я хочу сделать их одинаковыми по длине и ключам, как это:

Array
(
    [1399-1-27] => 2
    [1399-1-26] => 6
    [1399-1-25] => 3
    [1399-1-24] => 3
    [1399-1-23] => 2
)
Array
(
    [1399-1-27] => 3.6666666666667
    [1399-1-26] => 4
    [1399-1-25] => 2.6666666666667
)

, и мне нужен второй массив, наиболее преобразованный во что-то вроде этого:

Array
(
    [1399-1-27] => 3.6666666666667
    [1399-1-26] => 4
    [1399-1-25] => 2.6666666666667
    [1399-1-24] => 0
    [1399-1-23] => 0
)

имеет ли php функции для этой цели или какие-либо решения?

1 Ответ

2 голосов
/ 18 апреля 2020

вы можете установить значения первого массива в ноль, а затем объединить два для достижения вашего результата.

<?php

$array1= [
    '1399-1-27' => 2,
    '1399-1-26' => 6,
    '1399-1-25' => 3,
    '1399-1-24' => 3,
    '1399-1-23' => 2
];

$array2 = [
    '1399-1-27' => 3.6666666666667,
    '1399-1-26' => 4,
    '1399-1-25' => 2.6666666666667
];

$array1_0  = array_fill_keys(array_keys($array1), 0);
$result = array_merge($array1_0, $array2);
print_r($result);


?>  

Результат

Array
(
    [1399-1-27] => 3.6666666666667
    [1399-1-26] => 4
    [1399-1-25] => 2.6666666666667
    [1399-1-24] => 0
    [1399-1-23] => 0
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...