Comment pouvez-vous obtenir 1
en sortie de # 2?Comprendre && en PHP si -clause
# 1
j'ai couru ce code
echo validate_email ($email);
echo validate_password ($password);
echo validate_username ($username);
Je reçois
111
ce qui signifie que tout est ok.
# 2
J'exécuter ce code
function validate ($email, $password, $username) {
if ( (validate_email ($email) == 1)
AND (validate_password ($password) == 1)
AND (validate_username ($username) == 1))
return 1;
}
echo validate ($email, $password, $username);
je reçois rien comme ouput.
J'ai essayé de résoudre le problème en changeant AND
à &&
mais la même sortie reste. La sortie doit être 1
.
Le 'echo' manquant était un bogue dans ma question. Je l'ai corrigé. J'ai enlevé ces '== 1' dans mon code, et le code a commencé à fonctionner comme expectde. - Cela me suggère que deux dernières lignes de code ne sont pas équivalentes. C'est étrange, puisque les deux lignes devraient être équivalentes. –
@Masi: vos fonctions de validation _ *() retournent probablement vrai au lieu de 1, c'est pourquoi la comparaison stricte (=== au lieu de ==) ne fonctionnait pas. –