PHP:如何在Array中将值设置为空索引?

时间:2016-12-29 07:50:36

标签: php arrays yii2

我的PHP中有数组,例如:

阵列

Array
(
    [0] => Array 
        (
           [0] => 
           [1] => 
           [2] => 
           [3] => 
           [4] => 
           [5] => Grape
           [6] => Apple 
           [7] => Pineaple
           [8] => Avocado
           [9] => Banana
        )
)

我需要使用04中的新值填充空元素(索引array$variable)。 也许例如,我从另一个array获取数据:

newArray

Array
(
    [0] => Array 
        (
           [0] => Lemon
           [1] => Lime
           [2] => Mango
           [3] => Watermelon
           [4] => Starfruit
        )
)

所以我可以得到这样的结果:

finalArray

Array
(
    [0] => Array 
        (
           [0] => Lemon
           [1] => Lime
           [2] => Mango
           [3] => Watermelon
           [4] => Starfruit
           [5] => Grape
           [6] => Apple 
           [7] => Pineaple
           [8] => Avocado
           [9] => Banana
        )
)

任何帮助将不胜感激。感谢

4 个答案:

答案 0 :(得分:3)

你可以loop through your array,检查索引是否为空,然后设置它的值。

<?php
foreach($array as $index=>$value)
{
  if(empty($array[$index]))
  {
    $array[$index] = $newValue;
  }

}

答案 1 :(得分:1)

{{1}}

Link

答案 2 :(得分:0)

仅使用array_merge()功能 例如

 print_r( array_merge($array, $newarray) );

答案 3 :(得分:0)

标准库中已有一个名为array_replace的函数。如果另一个数组中的新值具有相同的索引,则可以使用它:

$result = array_replace($array1, $array2);

如果您只需要为空元素设置默认值,请使用array_map

$defaultValue = 'Foo';
$result = array_map(function ($item) use ($defaultValue) {
    return $item ?: $defaultValue;
}, $array1);

这是working demo