все побитовые значения массива вместе
У меня есть такой массив.
$a = array(
1,
2,
4,
// ...
64,
// go on ...
);
Я хочу вернуть
var_dump(1 | 2 | 4 | /* ... */ 64);
Как я могу побитово распределить все значения в массиве?
Я нашел это , но это ограничение на количество значений.
4
2 answers
$a = array_reduce($a, function ($v, $w){ return $v | $w; });
2
Author: User4407, 2013-08-11 09:14:58
Не можете ли вы выполнить итерацию по массиву? Как в этом примере:
$b = 0;
foreach($a as $value) {
$b |= $value;
}
var_dump($b);
2
Author: Pyrech, 2013-08-11 08:28:50