Escovando bits em PHP: operações bitwise e uma função debug

Publicado por Marcio Merlone em 01/09/2007

[ Hits: 6.168 ]

Blog: http://merlone.ath.cx

 


Escovando bits em PHP: operações bitwise e uma função debug



As operações bitwise não são muito comuns de serem vistas por aí, poucos programadores as conhecem. Mas são extremamente poderosas devido à sua velocidade de execução.

Pra melhor explicá-las, imagine uma situação onde você tem uma série de chaves liga-desliga para, por exemplo, armazenar opções de um determinado objeto, que possuam valores verdadeiro ou falso. Poderíamos criar uma convenção sobre uma sequência de zeros e uns, onde cada posição teria um significado, por exemplo:

00000

Respectivamente, da direita pra esquerda, para as opções 1, 2, 3, 4 e 5. Portanto, se quiséssemos que somente a opção 2 estivesse ligada, com valor verdadeiro, teríamos:

00010

Bem simples, não? O que já vi fazerem é armazenar esta string no banco de dados. Tendo-se, por exemplo, 54 opções, teríamos uma string de 54 caracteres. Imagine o algoritmo pra testar isto, transformando a string em um array e lendo o elemento número 'N' para saber se a opção está ligada ou não, fora a alocação desnecessária de memória. Apesar de parecer lógico, é ineficiente, existe maneira melhor.

Veja o artigo completo em:

http://merlone.ath.cx/2007/08/08/escovando-bits-em-php-operacoes-bitwise/

Outras dicas deste autor

Remover espaços no fim de linha - Eclipse

Escovando bits em PHP - operações bitwise sobre grupos e permissões

10 regras de ouro para inciar com código aberto

Leitura recomendada

Nasce site sobre Zend Framework

Framework PHP

Cuidados de segurança com o PHP

Autenticar usuário e mostrar os membros de um grupo no site PHP via LDAP no AD W2K12

Integração com PagSeguro no CakePHP 2.x

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts