Un simple script de validation d'e-mail continue de m'échouer.Expression régulière PHP
if(!preg_match('^[^@]{1,63} @ [^@]{1,255}$', $input)) {
return false;
}
Il doit être simple, assurez-vous juste un symbole « @ », longueurs correctes pour l'adresse locale et le domaine. Mais les emails valides continuent à échouer à ce test. Dans le fichier error_log, je reçois également un message indiquant que '@' est une variable indéfinie. Suis-je supposé y échapper? Mettre des backslashes en face d'eux n'a pas aidé.
Merci d'avance.
* edit: Je suppose que je devrais préciser, il y a beaucoup plus de choses dans le script de validation d'email, je n'ai tout simplement pas posté car ces parties fonctionnent très bien. Ce n'est clairement pas la seule validation mais c'est la seule qui continue à me faire des erreurs.
Pourquoi y at-il des espaces autour du '' @? – rockerest
Cela retournerait aussi true pour '!" £ $%^& *() @! "£ $%^& *()'. Mauvais moments. – adlawson
Les espaces sont juste pour le rendre facile pour les yeux. La vraie version est sans. Probablement ne devrait pas avoir ajouté cela cependant. – Renzo