3v4l.org

run code in 500+ PHP versions simultaneously
<?php $arr = [ 0 => [0, 0 , 0 , 0], 1 => [0, 1 , 0 , 0], 2 => [0, 0 , 1 , 0], 3 => [0, 0 , 0 , 0], ]; $new = []; foreach($arr as $r => $row){ foreach($row as $c => $val){ $new[$r][$c] = (in_array(1,$row) OR in_array(1,array_column($arr,$c))) ? 1 : 0; } } var_dump($new);
Output for 7.4.0 - 7.4.33, 8.0.1 - 8.0.30, 8.1.0 - 8.1.34, 8.2.0 - 8.2.30, 8.3.0 - 8.3.30, 8.4.1 - 8.4.21, 8.5.0 - 8.5.7
array(4) { [0]=> array(4) { [0]=> int(0) [1]=> int(1) [2]=> int(1) [3]=> int(0) } [1]=> array(4) { [0]=> int(1) [1]=> int(1) [2]=> int(1) [3]=> int(1) } [2]=> array(4) { [0]=> int(1) [1]=> int(1) [2]=> int(1) [3]=> int(1) } [3]=> array(4) { [0]=> int(0) [1]=> int(1) [2]=> int(1) [3]=> int(0) } }

preferences:
98.37 ms | 1337 KiB | 4 Q