如何在数组中配对键?

时间:2009-06-22 03:08:57

标签: php arrays merge

我有两个独立的数组,一个是ID,另一个是百分比ID:

Array
(
    [0] => 3
    [1] => 4
    [2] => 5
    [3] => 6
    [4] => 7
}

百分比数组:

Array
(
    [0] => 28
    [1] => 39
    [2] => 17
    [3] => 28
    [4] => 23

所以它最终会像:

Array
    (
        [0] => Array

            (
                 [id] => 3
                 [percent] => 28
             )
每个对的

等等?

4 个答案:

答案 0 :(得分:1)

只需循环遍历数组的元素(0..4)并将项添加到新数组中。

(我不包括示例代码,因为这听起来像是家庭作业!)

答案 1 :(得分:0)

我认为没有任何内置的方法可以做到这一点,所以你必须利用像...这样的循环。

$pairs = array();
for($i = 0, $len = count($ids); $i < $len; $i++) {
    $pair = array(
        'id' => $ids[$i],
        'percent' => $percents[$i]
    );

    $pairs[] = $pair;
}

答案 2 :(得分:0)

AFAIK你不能以微不足道的方式做到这一点,但是你可以这样做:

array_combine($ids, $percentages);

答案 3 :(得分:0)

一个好主意可能是使用两个循环来解释数组没有相同成员数的情况:

$ids = array(...);
$percent = array(...);
$combined = array();
foreach($ids as $index => $id) {
    $combined[$index]['id'] = $id;
}
foreach($percent as $index => $percentage) {
    $combined[$index]['percent'] = $percentage;
}