>  기사  >  백엔드 개발  >  PHP에서 비트 연산(비트 AND, 비트 OR)의 다양한 용도

PHP에서 비트 연산(비트 AND, 비트 OR)의 다양한 용도

WBOY
WBOY원래의
2016-07-25 09:12:121229검색
按位与、按位或在php的开发过程中有什么作用呢?
  1. /**
  2. * 1、权限应用
  3. * 拥有哪些权限,就把这些权限对应的数值加起来
  4. * 例如:版主拥有权限(增加、删除、修改、查询),则版主的权限值存储为15(8 4 2 1)
  5. * 然后【权限值之和】 与 【实际权限值】做【位于】比较
  6. * 结果是真则拥有权限
  7. * 结果是假则没有权限
  8. *
  9. * 注意:权限值必须是2的N次方,从0次方开始,31次方是2147483648
  10. * 32次方是4294967296,已超过了常用int(10)最大存储4294967295,所以必须注意权限数量(<31个)
  11. * 当然如果存储格式为bitint或varchar等可以存储更长数字的格式,那么权限数量可以继续增加
  12. */
  13. $permission = 15; //1 2 4 8 拥有全部权限
  14. $permissions = array(
  15. 8 => '增加',
  16. 4 => '删除',
  17. 2 => '修改',
  18. 1 => '查询'
  19. );
  20. foreach ($permissions as $key => $val) {
  21. if($key & $permission) {
  22. echo '我有' . $val . '的权力
    ';
  23. }
  24. }
复制代码
  1. 等待添加
复制代码


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.