PHP - 将两个数组(相同长度)合并为一个关联?
Posted
技术标签:
【中文标题】PHP - 将两个数组(相同长度)合并为一个关联?【英文标题】:PHP - Merge two arrays (same-length) into one associative? 【发布时间】:2010-11-15 02:42:01 【问题描述】:其实很简单的问题..
是否可以在 PHP 中将两个相同长度的单独数组组合成一个关联数组,其中第一个数组的值用作关联数组中的键?
我当然可以这样做,但我正在寻找另一个(内置)功能,或更有效的解决方案..?
function Combine($array1, $array2)
if(count($array1) == count($array2))
$assArray = array();
for($i=0;$i<count($array1);$i++)
$assArray[$array1[$i]] = $array2[$i];
return $assArray;
【问题讨论】:
"ass array",绝对是一个好记的名字。 ;) 【参考方案1】:array_combine($keys, $values)
PS:点击我的答案!它也是一个链接!
【讨论】:
【参考方案2】:你需要array_combine。
<?php
$a = array('green', 'red', 'yellow');
$b = array('avocado', 'apple', 'banana');
$c = array_combine($a, $b);
print_r($c);
?>
【讨论】:
【参考方案3】:已经有一个array_combine
function:
$combined = array_combine($keys, $values);
【讨论】:
但数组组合不会将空值放入新数组中。 :( @gumuruh 你能详细说明一下吗?【参考方案4】:大家好,我将向您展示如何将 2 个数组合并到一个数组中
我们有 2 个数组,我将从它们中创建一个数组
$data_key = array('key1','key2');
$data_value = array('val1','val2');
让我们声明主数组
$main_array = array();
现在让我们用 2 个数组填充它
foreach ($data_key as $i => $key)
$main_array[$key] = $data_value[$i];
现在让我们使用var_dump($main_array);
看看结果
array(2)
["key1"]=> string(4) "val1"
["key2"]=> string(4) "val2"
我希望这可以帮助某人:)
【讨论】:
以上是关于PHP - 将两个数组(相同长度)合并为一个关联?的主要内容,如果未能解决你的问题,请参考以下文章