Как переместить значения из 2-го массива в пустые места 1-го массива - PullRequest
0 голосов
/ 25 марта 2019

Как переместить значения из 2-го массива в пустые места 1-го массива

1-й массив, как показано ниже

Array
(
    [0] => 1
    [1] => 
    [2] => 4
    [3] => 
)

2-й массив, как показано ниже

Array
(
    [0] => 5
    [1] => 9

)

Я хочу выводить как объединение 2-го массива в 1-й, как показано ниже

Array
(
    [0] => 1
    [1] => 5
    [2] => 4
    [3] => 9
)

Я пробовал ниже код .....

for($i=0; $i<$count; $i++){
    for($j=$i; $j<=$i; $j++)
      if(empty($assign_taskk[$i])){
            $assign_taskk[$i] = $taskkk[$i];
       }
}

Пожалуйста, помогите мне для того же

Ответы [ 4 ]

0 голосов
/ 25 марта 2019

Вы можете использовать следующий код для этого:

$firstArray = [1,'',4,''];
$secondArray = [5,9];

$secondArrayCounter = 0;
foreach($firstArray as $key => $value) {
    if (empty($value)) {
        $firstArray[$key] = $secondArray[$secondArrayCounter];
        $secondArrayCounter++;
    }
}
print_r($firstArray); 

Надеюсь, это поможет вам.

0 голосов
/ 25 марта 2019

Другой способ сделать это, используя следующий способ -

<?php
$arr1= [1,null,4,null];
$arr2 = [null,5,null,9];
$result = array_values(array_filter($arr1) + array_filter($arr2));
print_r($result)
?>

DEMO: https://3v4l.org/R4aeE

0 голосов
/ 25 марта 2019
Hi @amod try this        
$_newArray = array_values(array_filter($array1) + array_filter($array2));
print_r($_newArray);
0 голосов
/ 25 марта 2019

Допустим, ваши массивы выглядят так:

$a1 = [
    0 => 1,
    1 => null,
    2 => 4,
    3 => null,
];

$a2 = [
    0 => null,
    1 => 5,
    2 => null,
    3 => 9,
];

Затем вы можете перебирать первый массив и добавлять значения из второго при необходимости:

foreach ($a1 as $k => $v) {
    if (empty($v) && !empty($a2[$k])) {
        $a1[$k] = $a2[$k];
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...