[php] Tester si le paramètre est en hexa
Résolu
dcanl
Messages postés
3004
Date d'inscription
Statut
Contributeur
Dernière intervention
-
dcanl Messages postés 3004 Date d'inscription Statut Contributeur Dernière intervention -
dcanl Messages postés 3004 Date d'inscription Statut Contributeur Dernière intervention -
Bonsoir,
Existe-t-il une fonction php qui permette de savoir si une chaine passée en paramètre est bien en hexadécimal ?
Si oui, laquelle ?
Si non, j'imagine qu'il faut que je parcours la chaîne pour vérifier que chaque caractère appartient à 0123456789ABCDEFabcdef... Comment pourrais-je faire ça ?
Merci d'avance !
--
Quand la merde tombe du ciel, le malchanceux n'a pas de chapeau.
Existe-t-il une fonction php qui permette de savoir si une chaine passée en paramètre est bien en hexadécimal ?
Si oui, laquelle ?
Si non, j'imagine qu'il faut que je parcours la chaîne pour vérifier que chaque caractère appartient à 0123456789ABCDEFabcdef... Comment pourrais-je faire ça ?
Merci d'avance !
--
Quand la merde tombe du ciel, le malchanceux n'a pas de chapeau.
3 réponses
-
Salut,
Tu peux utiliser les expressions réguilières pour tester ça :
<code><?php
if( ereg("^[0-9a-fA-F]{1,}$",$variable) ) print "Format OK"; else print "Chaîne pas en hexadécimal";
?>
Ici, la fonction ereg va te chercher dans la variable $variable une suite de 1 ou plus caractère qui peuvent être compris entre 0 et 9, a et f ou A et F. La chaîne devra commencer ( ^ ) et finir ( $ ) par un de ces caractères.
@Bientôt -
Salut.
Merci pour ta réponse.
Effectivement, je pensais bien que les expressions régulières allaient pouvoir me permettre de faire ce que je souhaite, mais étant donné que je n'ai que très peu d'expérience avec celles-ci, je ne savais pas comment m'y prendre.
Donc merci beaucoup, je teste ça dès que je peux !
@+ -
Merci beaucoup c'est nickel.
Ça m'a remotivé pour apprendre les expressions régulières ! :D
@+