首页 > 解决方案 > 使用另一个数组PHP中的值复制数组内的值

问题描述

嗨,我有三个这样的数组

$arr1 = array(2,3,4,5);
$arr2 = array(1,2,3,4);
$arr3 = array();

我需要一个循环函数来复制 $arr2 中的每个值和 $arr1 中的值,所以最终结果应该如下所示:

$arr3= array(1,1,2,2,2,3,3,3,3,4,4,4,4,4,4);

我知道我需要这样做

for($i=0;$i < count($arr2);$++){
 array_push($arr3,$arr2[$i]);
}

但我不知道用于迭代 array_push 循环的外部循环,我应该添加什么来进行复制?

标签: php

解决方案


解决方案 1:您需要应用一个foreach()andfor()循环

1.遍历第一个数组$arr1

2.检查与第一个数组相同键的值是否存在于第二个数组中

3.根据第一个数组值应用循环

4.基于循环重复赋值相同的值

foreach($arr1 as $key=>$arr){

  if(isset($arr2[$key])){

     for($i=0;$i<$arr;$i++){

      $arr3[] = $arr2[$key];

     }
  }
}

print_r($arr3);

输出:- https://eval.in/1005648

解决方案 2:您可以使用array_merge()array_fill()

foreach($arr1 as $key=>$arr){

  $arr3= array_merge($arr3,array_fill(count($arr3),$arr,$arr2[$key]));

}

echo "<pre/>";print_r($arr3);

输出:- https://eval.in/1005666


推荐阅读