비트 연산은 프로그래밍에서 비트 패턴의 비트 단위 또는 이진수에 대한 단항 및 이진 연산입니다. 많은 구형 마이크로프로세서에서 비트 연산은 덧셈과 뺄셈보다 약간 빠르며, 일반적으로 비트 연산은 곱셈과 나눗셈보다 훨씬 빠릅니다. 현대 아키텍처에서 비트 연산은 종종 덧셈과 동일한 속도로 작동합니다(곱셈보다 여전히 빠릅니다).
^: 비트별 XOR. 값을 바이너리로 변환하여 비교합니다. 동일한 위치 중 하나가 1이면 해당 위치의 결과는 1이고 그렇지 않으면 0입니다. 예는 다음과 같습니다:
$a=1;//二进制为00001 $b=2;//二进制为00010 echo $a^$b;// 00011 就是3,因此输出3
&: 비트 AND. 값을 바이너리로 변환하여 비교합니다. 동일한 위치 중 두 개만 모두 1이면 해당 위치의 결과는 1이고, 그렇지 않으면 0입니다. 예를 들면 다음과 같습니다.
$a=1;//二进制为00001 $b=2;//二进制为00010 $c=3;//二进制为00011 echo $a&$b;// 00000 就是0,因此输出0 echo $a&$c;// 00001 就是1,因此输出1 echo $b&$c;// 00010 就是2,因此输出2
비트별 & 뒤의 반환 값은 주로 $a가 $c에 존재하는지 확인하는 데 사용되므로 권한 용도가 많습니다. 예를 들어
$my_privilege = 15; // 1+2+4+8 拥有全部权限 $Pri = ''; $privilege_arr = array(8=>'增', 4=>'删',2=>'改',1=>'查'); foreach($privilege_arr as $k =>$v){ $k & $my_privilege && $Pri .= '我有'.$v.'的权力<br>'; } echo $Pri;//输出结果
에서는 다음 학습을 권장합니다. php 비디오 튜토리얼
위 내용은 비트 연산자에서 ^ 및 &를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!