关于连接两个数组的困惑

时间:2012-11-02 09:46:01

标签: php arrays

<?php
    $arr1=array("jol","pop","hari","john");//the array count is not limited to 4
    $arr2=array('germany','america','holland','america');
    ?>

现在我要链接

Name: jol(1),pop(2),hari(3),john(2)

Address:germany(1),america(2),holland(3)

我们将名称设为pop(2)john(2),因为两者都属于同一个国家/地区

1 个答案:

答案 0 :(得分:1)

假设两个数组总是具有相同数量的条目,您可以使用如下代码执行此操作:

for($i=0; $i<count(@arr2); $i++) {
    if(!isset($country[$arr2[$i]])) {
        $country[$arr2[$i]] = $i;
    }
    $link[$arr1[$i]] = $country[$arr2[$i]];
}

循环的第一部分存储每个国家的第一场比赛的索引。第二部分找到每个名称的相应索引。

当然,如果没有为用户找到国家/地区(例如,数组中的元素数量不匹配),您需要添加错误检查。