2016-11-23 1 views
-1

У меня есть код, как этотоператор PHP | = объяснить

<?php 
$mask = 5; 
$mask |= 10; 
echo $mask; 
?> 

выход кода выше 15. Но я не могу понять оператора | =

+2

'$ маска | = 10;' 'означает, что $ маска = $ маска | 10; ' –

+0

следуйте по ссылке: http://www.php.net/manual/en/language.operators.bitwise.php –

ответ

0

$ маска | = 10 означает, что $ mask = $ mask | 10. '|' оператор называется побитовым оператором. Следуйте примеру, как работает побитовый оператор.

$mask =$mask | 10 
     = 5 | 10 
Firstly we have to convert the decimal to binary. 
128 64 32 16 8 4 2 1 
       1 0 1 =>5 
      1 0 1 0 => 10 
So for 5| 10 
Output will be 8+4+2+1 =15 

Здесь мы должны добавить все десятичные числа, которые находятся под 1 бит.

Другой пример для 10 | 10

128 64 32 16 8 4 2 1 
      1 0 1 0=>10 
      1 0 1 0 => 10 

Так результат 10 | 10 является

= 8+2 = 10 

Для получения более подробной информации посетите ссылку http://www.w3resource.com/php/operators/bitwise-operators.php

Смежные вопросы