PHP merge/rewrite 数组按条件归一

PHP merge/rewrite arrays to one by condition

我想将它们合并到值为 1 的一个。

示例:

我有 3 个数组:

$array1 = [1,0,0,1,0];
$array2 = [0,0,0,1,0];
$array3 = [0,1,0,0,0];

有 "n" 个数组。

所以想要的输出将是:

$array = [1,1,0,1,0]

更多详情:

这是我合并用户权限的基本思路。每个数组代表用户所属的组,数组中的每个键都是权限。如果用户有权限,数组的每个值代表true/false。

感谢您的代码/建议/想法。

这应该适合你:

<?php

    $array1 = [1,0,0,1,0];
    $array2 = [0,0,0,1,0];
    $array3 = [0,1,0,0,0];
    $result = array();  
    $n = 3; $tmp = 0;
    $result = array();

    for($count = 0; $count < count($array1); $count++) {    
        for($i = 1; $i <= $n; $i++)
            $tmp = ${"array" . $i}[$count] || $tmp;
        $result[] = $tmp;
    }

    var_dump($result);

?>

输出:

array(5) { [0]=> bool(true) [1]=> bool(true) [2]=> bool(false) [3]=> bool(true) [4]=> bool(false) }