如何获取两个数组并将它们列为以逗号分隔的密钥对。
Array1
'key1a'=>'value'
'key2a'=>'value'
'key3a'=>'value'
Array2
'key7b'=>'value'
'key8b'=>'value'
'key9b'=>'value'
期望的输出:
key1a = key7b, key2a = key8b, key3a = key9b
$new_Array = array_combine(array_keys($Array1), array_keys($Array2));
$array1 = array('key1a'=>'value',
'key2a'=>'value',
'key3a'=>'value');
$array2 = array('key7b'=>'value',
'key8b'=>'value',
'key9b'=>'value');
$keys = array_combine(array_keys($array1),array_keys($array2));
foreach($keys as $k => $k2) echo " $k = $k2".($k2==end($keys)?'':',');
foreach($arr1 as $i => $val){
foreach($arr2 as $j => $val2){
echo $i . " = " . $j . ", ";
}
}
这可行,但可能不是您想要的(因为您评论说您试图在没有循环的情况下这样做?)请记住,array_combine()
它是一个 PHP5 函数。
$newarr = array_combine(array_keys($arr1), array_keys($arr2));
鉴于 $arr1 和 $arr2 的长度相同,应该这样做。
我在想这个:
implode(', ', array_map(create_function('$k1,$k2', 'return $k1 . " = :" . $k2;'), array_keys($array1), array_keys($array2)))