Décomposition en puissance de 2

Décomposition en puissance de 2 - PHP - Programmation

Marsh Posté le 18-10-2006 à 15:00:40    

Hello,
 
je me souviens plus du terme téchnique pour l'operation que je desire réaliser, donc j'ai du mal a chercher par moi même... d'où ce petit topic !
 
Voila je construis un systeme de droit, pour ce faire j'ai utilisé un systeme assez simple ... chaque "droit" vaut une puissance de deux (1 2 4 8 etc...)
 
imaginons que :
Lecture = 1
Ecriture = 2
Modif = 4
 
Si un user a 3 comme droit, alors il peut lire et ecrire.
 
Bref c'est simple, je n'invente rien néanmoins je me demandais s'il n'existait pas une fonction en php qui me permettais de retrouver directement la décomposition (4=4, 3=2+1 etc...).
 
Histoire de pas reinventer la roue :)
 
Bye,
folk
 
PS: si vous avez le nom de l'operation mathématique.. je suis preneur.... j'aurais dis "décomposition binaire" mais il me semble que ce n'est pas ca.
 

Reply

Marsh Posté le 18-10-2006 à 15:00:40   

Reply

Marsh Posté le 18-10-2006 à 15:04:04    

if(droit & 1) => lecture
if(droit & 2) => ecriture
if(droit & 4) => modif
 
Accessoirement je ne suis pas sûr de percevoir la nuance entre modif et ecriture


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 18-10-2006 à 15:10:15    

bah c'est "imaginons" si je n'avais que ces 3 cas a gerer, j'aurais fais plus simple ;)
 
Mais dans tous les cas :
ecriture = ajout / suppr.
modif = modif.
 
m'enfin c'est pas le propos ...
 
Sinon j'ai pas tout compris le & ... j'ai jamais utilisé cet operateur en PHP, et j'arrive pas a trouver la doc la dessus... recherche sur un seul caractere c'est pas evident :D
 
EDIT: c'est toujours pareil, il suffit de poster pour trouver !
 
le & est donc l'operteur de comparaison bit a bit.
 
MERCI :)

Message cité 1 fois
Message édité par FLK le 18-10-2006 à 15:13:11
Reply

Marsh Posté le 18-10-2006 à 15:15:43    

FLK a écrit :

bah c'est "imaginons" si je n'avais que ces 3 cas a gerer, j'aurais fais plus simple ;)
 
Mais dans tous les cas :
ecriture = ajout / suppr.
modif = modif.


mouais.

FLK a écrit :

Sinon j'ai pas tout compris le & ... j'ai jamais utilisé cet operateur en PHP, et j'arrive pas a trouver la doc la dessus... recherche sur un seul caractere c'est pas evident :D


"&" est habituellement l'opérateur "bitwise and"
 
http://www.php.net/manual/en/langu [...] itwise.php
 
Pour des infos utiles sur le sujet, http://en.wikipedia.org/wiki/Bitwise_AND#AND
 
C'est utilisé en permanence pour les bitmasks (entre autres)

Message cité 1 fois
Message édité par masklinn le 18-10-2006 à 15:16:39

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 18-10-2006 à 15:19:06    


 
Encore un fois c'est un CAS FICTIF  :sweat:  
J'aurais du mettre les fameux RWX  :D  
 
 
Mais en tous cas merci pour la réponse, ca roule tout seul :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed