PHP数组键对值来自两个独立的数组


PHP Array Key-Pair Value From 2 Separate Array

<div class="container">
    <?php
        $person = array("azizul@gmail.com", "yong@gmail.com", "liew@gmail.com");
        $id = array("1", "2", "3", "4", "5");
        $newArray = array();
        for ($i = 0; $i < count($id); $i++) {
            for ($j = 0; $j < count($person); $j++) {
                $newArray[$id[$i]] = $person[$j];
            }
        }
        echo json_encode($newArray);
    ?> 

输出:

{"1":"liew@gmail.com","2":"liew@gmail.com","3":"liew@gmail.com","4":"liew@gmail.com","5":"liew@gmail.com"}

我想要创建的输出:

{"1":"azizul@gmail.com","2":"yong@gmail.com","3":"liew@gmail.com","4":"azizul@gmail.com","5":"yong@gmail.com"}

我错过了什么?谢谢你的帮助

试一下

$person = array("azizul@gmail.com", "yong@gmail.com", "liew@gmail.com");
        $id = array("1", "2", "3", "4", "5");
        $newArray = array();
        $j=0;
        for ($i = 0; $i < count($id); $i++) {
            if(count($person) == $j){
             $j=0; 
           }
            $newArray[$id[$i]] = $person[$j++];
        }

不完全确定这应该解决什么问题,但它看起来像你之后的是

$persons_count = count($persons);
for ($i = 0; $i < count($id); $i++) {
    $modded_index = $persons_count % $i;
    $newArray[$i] = $person[$modded_index];
}

至少这段代码会让你得到你想要的解决方案。