Php 需要使用2个数组转换数组
我有两个数组,如下所示Php 需要使用2个数组转换数组,php,arrays,Php,Arrays,我有两个数组,如下所示 Array1 = Array( [8756] => 1A10 [8758] => 1B20 [8770] => 1B25 ) Array2 = Array( [8756] => 413072-FT6 [8758] => 413072-HT4 [8770] => 413072-W
Array1 = Array(
[8756] => 1A10
[8758] => 1B20
[8770] => 1B25
)
Array2 = Array(
[8756] => 413072-FT6
[8758] => 413072-HT4
[8770] => 413072-WT4
)
上面两个数组具有相同的键和diff值,我需要具有如下结构的新数组
Array
(
[8756] => Array
(
[loc] => 1A10
[sku] => 413072-FT6
)
[8758] => Array
(
[loc] => 1B20
[sku] => 413072-HT4
)
[8770] => Array
(
[loc] => 1B25
[sku] => 413072-WT4
)
)
你只需要循环,然后抓住正确的部分
$locs = //your array1;
$skus = //your array2;
$merged = array(); //what to add it to
foreach($locs as $key => $value){ //need key to place in merged and grab from skus
$merged[$key]['loc'] = $value;
$merged[$key]['sku'] = $skus[$key];
}
这会奏效的
$ar1 = array( "8756" => "1A10",
"8758" => "1B20",
"8770" => "1B25");
$ar2 = array(
"8756" => "413072-FT6",
"8758" => "413072-HT4",
"8770" => "413072-WT4"
);
$newarr = array();
foreach($ar1 as $k=>$v){
array_push($newarr, $newarr[$k]=array('loc'=>$v, 'sku'=>$ar2[$k]));
}
echo "<pre>";
print_r($newarr);
echo "</pre>";
$ar1=数组(“8756”=>“1A10”,
“8758”=>“1B20”,
“8770”=>“1B25”);
$ar2=数组(
“8756”=>“413072-FT6”,
“8758”=>“413072-HT4”,
“8770”=>“413072-WT4”
);
$newarr=array();
foreach($ar1为$k=>$v){
阵列推送($newarr,$newarr[$k]=array('loc'=>$v,'sku'=>$ar2[$k]);
}
回声“;
印刷费($newarr);
回声“;
试试这个
Array
(
[8756] => Array
(
[loc] => 1A10
[sku] => 413072-FT6
)
[8758] => Array
(
[loc] => 1B20
[sku] => 413072-HT4
)
[8770] => Array
(
[loc] => 1B25
[sku] => 413072-WT4
)
)
输出
您是如何让这项工作正常进行的?查看您的尝试可能有助于我们了解您的问题。我有单独的排序2数组,现在我需要使用相同的键组合,并且需要像这样再次传递数组-您没有尝试任何操作?是否可能。我做了一些研发,尝试了一些技巧,但没有得到任何成果solution@Ch037当你尝试时,一切都是可能的。。。
Array
(
[8756] => Array
(
[loc] => 1A10
[sku] => 413072-FT6
)
[8758] => Array
(
[loc] => 1B20
[sku] => 413072-HT4
)
[8770] => Array
(
[loc] => 1B25
[sku] => 413072-WT4
)
)