-2
<?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)都来自同一个国家

4

1 回答 1

1

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

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

循环的第一部分存储每个国家/地区的第一个匹配项的索引。第二部分查找每个名称的相应索引。

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

于 2012-11-02T09:54:12.683 回答