BITWISE HANDLER : GESTION DES BITS POUR GÉRER LES DROITS

malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 - 22 déc. 2008 à 19:27
cs_exar Messages postés 286 Date d'inscription vendredi 5 décembre 2003 Statut Membre Dernière intervention 22 avril 2012 - 11 févr. 2009 à 18:46
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/48771-bitwise-handler-gestion-des-bits-pour-gerer-les-droits

cs_exar Messages postés 286 Date d'inscription vendredi 5 décembre 2003 Statut Membre Dernière intervention 22 avril 2012 1
11 févr. 2009 à 18:46
Hello !
Sincèrement, j'ai lu plusieurs de tes sources, c'est super instructif ! Excellent travail !
Bonne continuation !
Utilisateur anonyme
23 déc. 2008 à 10:51
Lut, merci pour la précision - je viens de convertir ça en decimales correspondant aux valeurs des bits. Dommage qu'il n'y ait pas de syntaxe pour écrire directement une valeur binaire.

Je viens de rajouter un zip avec un fichier example.php - je t'assure spipod c'est du niveau débutant en terme d'exploitation - aussi simple qu'un hello world.

Ptite astuce qui fait l'un des intérêts d'utiliser du binaire : vous pouvez définir dans un même fichier des droits genre, lecture, ecriture, suppression ...etc... et des niveaux genre annonyme, admin, visiteur ...etc...

Exemple illustré avec 'admin' dans example.php :

- read : 001
- write : 010
- delete : 100

- admin : 111 (all)
- guest : 001 (only read)
- editor : 011 (read + write)

Bonne prog et merci malalam pour la correction
spipod Messages postés 23 Date d'inscription mercredi 2 février 2005 Statut Membre Dernière intervention 17 juillet 2009
23 déc. 2008 à 10:10
Niveau débutant ??? je ne pense pas ;)

Pour la petite erreur, cela ne change rien, les positions binaires active ne sont pas les mêmes, mais s'il faut gérer plus de droit, je ne conseille pas cette notation.

Définir ses constantes, c'est une bonne idée ! et je trouve cela très exploitable.
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
22 déc. 2008 à 19:30
Après, ça change (à priori) rien au fonctionnement hein...PHP va les gérer comme des entiers dans les deux cas.
C'était juste pour préciser à ceux qui lisent ce code.
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
22 déc. 2008 à 19:27
Hello Akhe,

je fais vite...j'ai pas trop le temps: c'est très intéressant, j'ai pas décortiqué du tout, j'ai parcouru, mais d'emblée un truc me gène quand même : 0x100, c'est pas une notation binaire, c'est de l'hexa. Du coup, gare aux surprises!
0x100 << 2 n'est pas égal à 16, mais à 1024.
Car (int)0x100 === 256
(FF + 1, quoi)
Rejoignez-nous