Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 数组push()dosen';t将新数组推送到以前的数组中并生成新索引_Php_Arrays_Sorting - Fatal编程技术网

Php 数组push()dosen';t将新数组推送到以前的数组中并生成新索引

Php 数组push()dosen';t将新数组推送到以前的数组中并生成新索引,php,arrays,sorting,Php,Arrays,Sorting,我有两个长度相同的数组。假设数组X和X X = ["A","B","C"]; x = ["a","b","c"]; 所以我想做的是将x值推送到每个索引中,在这里我需要我的新数组,如下所示 0 => A a 1 => B b 2 => C c 这就是我尝试过的 foreach($x as $simplex){ array_push($X,$simplex); } 但这给了我下面的东西 0

我有两个长度相同的数组。假设数组X和X

X = ["A","B","C"];
x = ["a","b","c"];
所以我想做的是将x值推送到每个索引中,在这里我需要我的新数组,如下所示

0 => A
     a
1 => B
     b
2 => C
     c
这就是我尝试过的

foreach($x as  $simplex){
                array_push($X,$simplex);
            }
但这给了我下面的东西

0 => A
1 => B
2 => C
3 => a
4 => b
5 => c
有人能帮我吗?
谢谢

解决方法之一是

$X = ["A","B","C"];
$x = ["a","b","c"];

$results = [];

foreach ($X as $i => $valueX) {
  foreach ($x as $j => $valuex) {
     if($i === $j){
        $results[$i] = [$valueX, $valuex];
     }
  }
}

print_r($results);
你可以用


谢谢你的回答。我将测试这两种情况,然后标出答案。再次感谢guysarray_地图版更干净一点。此外,更易于扩展到2个以上的阵列。但是,这两种解决方案都不能解决任何输入数组在大小上与所有其他数组不同的情况。
$array = array_map(function ($a, $b) {
  return [$a, $b];
}, $X, $x)