【发布时间】:2015-04-02 18:27:47
【问题描述】:
我需要组合两个数组,第一个数组中的键应替换为第二个数组中的相应值。如果两个数组具有相同数量的元素并且它们具有相同的顺序,则以下代码可以正常工作。
$first = array("a"=>"red", "b"=>"green", "c"=>"blue");
$second = array("a"=>"sun", "b"=>"grass", "c"=>"sky");
$new = array_combine($second, $first);
print_r($new);
结果
Array
(
[sun] => red
[grass] => green
[sky] => blue
)
但我需要它在它们没有相同元素编号或顺序不同的情况下工作。我怎样才能实现它?
【问题讨论】:
-
array_combine() 需要参数应该有相同数量的元素
-
你的意思是“但我需要这个在他们没有相同元素编号的情况下工作”?考虑这些数组: 1- $myArrayA = ['a'=>'aa' , 'b' => 'bb'] 2- $myArrayB = ['a' => 'cc' , 'd' => 'ff ' , 'g' => 'hh'] 你的数组组合的结果是什么??
-
@majid8911 应该是
$combination = ['cc'=>'aa' , 'b' => 'bb']