Et là, avec mon code, j'arrive pas à comprendre sa logique, mais il valide et ne valide pas un peu tout et n'importe quoi...
Il faut donner des exemples qu'on puisse exécuter 
Quelqu'un aurait-il une idée du problème?
Tu ne limites pas le champ de recherche de ton expression.
Exemple, si tu fais :
preg_match('/\d{4}/', 'abc-1234-def')
Le résultat sera positif car tu as bien 4 chiffres dans ta chaîne.
Si tu veux restreindre la chaîne cherchée au masque il faut faire :
preg_match('/^\d{4}$/', 'abc-1234-def')
^ et $ symbolisant respectivement le début et la fin de la chaîne testée.
Partager