I was trying to develop a function where I provide two simple arrays of same size and it covert it into two dimentional array,but so far no success
我试图开发一个函数,我提供两个相同大小的简单数组,并将其转换为二维数组,但到目前为止还没有成功
Here what I did
这就是我做的
$list1=array(78,79,80,81);
$list2=array(1,2,3,4);
$result=joinArray($list1,$list2);
function joinArray($array1,$array2){
$Jarray=array();
for ($x=0; $x<=sizeof($array1)-1; $x++) {
$Jarray[]=array($array1[$x],$array2[$x]);
}
return $Jarray;
}
I want the end result should look like this
我希望最终结果看起来像这样
$result[0][0]=78 $result[0][1]=1 $result[1][0]=79 $result[1][1]=2 $result[2][0]=80 $result[2][1]=3 $result[3][0]=81 $result[3][1]=4
But its not retuning array in this format,Please tell me why its not working what is the proper way of doing it
但它不是这种格式的重新调整阵列,请告诉我为什么它不能正常工作的正确方法
Thanks
谢谢
3 个解决方案
#1
0
Here is a simple code:
这是一个简单的代码:
function joinArray($arr1, $arr2) {
$final_array = array();
$row = 0;
for($x = 0; $x<count($arr1); $x++){
$final_array[$row][0] = $arr1[$x];
$final_array[$row][1] = $arr2[$x];
$row++;
}
return $final_array;
}
$list1=array(78,79,80,81);
$list2=array(1,2,3,4);
$result = joinArray($list1,$list2);
The $row variable do the trick.
$ row变量可以解决这个问题。
#2
1
You're adding an extra level to the array.
您正在为阵列添加额外的级别。
Replace this:
替换这个:
$Jarray[]=array(array($array1[$x],$array2[$x]));
with this:
有了这个:
$Jarray[]=array($array1[$x],$array2[$x]);
#3
0
Simple logic return your required output
简单的逻辑返回您所需的输出
$list1=array(78,79,80,81);
$list2=array(1,2,3,4);
$array = array();
for ($i=0;$i<count($list1);$i++)
{
$array[$i][0] = $list1[$i];
}
for ($i=0;$i<count($list2);$i++)
{
$array[$i][1] = $list2[$i];
}
var_dump($array);
Output
产量
array
0 =>
array
0 => int 78
1 => int 1
1 =>
array
0 => int 79
1 => int 2
2 =>
array
0 => int 80
1 => int 3
3 =>
array
0 => int 81
1 => int 4
#1
0
Here is a simple code:
这是一个简单的代码:
function joinArray($arr1, $arr2) {
$final_array = array();
$row = 0;
for($x = 0; $x<count($arr1); $x++){
$final_array[$row][0] = $arr1[$x];
$final_array[$row][1] = $arr2[$x];
$row++;
}
return $final_array;
}
$list1=array(78,79,80,81);
$list2=array(1,2,3,4);
$result = joinArray($list1,$list2);
The $row variable do the trick.
$ row变量可以解决这个问题。
#2
1
You're adding an extra level to the array.
您正在为阵列添加额外的级别。
Replace this:
替换这个:
$Jarray[]=array(array($array1[$x],$array2[$x]));
with this:
有了这个:
$Jarray[]=array($array1[$x],$array2[$x]);
#3
0
Simple logic return your required output
简单的逻辑返回您所需的输出
$list1=array(78,79,80,81);
$list2=array(1,2,3,4);
$array = array();
for ($i=0;$i<count($list1);$i++)
{
$array[$i][0] = $list1[$i];
}
for ($i=0;$i<count($list2);$i++)
{
$array[$i][1] = $list2[$i];
}
var_dump($array);
Output
产量
array
0 =>
array
0 => int 78
1 => int 1
1 =>
array
0 => int 79
1 => int 2
2 =>
array
0 => int 80
1 => int 3
3 =>
array
0 => int 81
1 => int 4