AkeluX
Messages postés113Date d'inscriptionsamedi 15 mai 2004StatutMembreDernière intervention 9 mars 20072 20 févr. 2007 à 12:15
Bonjour,
En résumé, compare les valeurs mais aussi le type des deux opérandes alors que se contente des valeurs convertis dans un type commun ... Il en va de même pour !== …
Dans votre cas, PHP va convertir votre variable $test en un entier (qui vaut 0) pour pouvoir le comparer avec le 0 !
cs_jean84
Messages postés449Date d'inscriptionjeudi 26 août 2004StatutMembreDernière intervention 5 mars 2009 20 févr. 2007 à 19:13
Hello
Petite astuce, lorsque tu regardes la valeur de retour d'une fonction (par exemple via php.net), certaines fonctions renvoient 2 types de valeurs, soit int soit FALSE. C'est a ce moment la que tu peut tester avec le === qui verifie le type et la valeur, pas seulement la valeur (comme l'a souligne AkeluX).
Exemple : mysql_num_rows() renvoi soit le nombre de resultats trouves lors d'une requete sql dans une table soit FALSE si il y a eu une erreur. Il est donc indispensable de tester si le resultat est soit 0, soit FALSE soit superieur a 0 (1, 2, 4, 6, 100 ect...)
Faire un
if ( !mysql_num_rows($Result) )
echo 'Aucun resultat';
c'est ce qui s'appelle un abus de langage. Le script fonctionnera tres bien mais si tu veux intercepter une erreur precise, tu sera dans l'impossibilite de savoir si tu n'as aucune erreur et 0 resultat ou si tu as eu une erreur et que la fonction a echoue.
Pense bien a allez voir la doc que [auteurdetail.aspx?ID=551996 vilhjalms] t'as indique, c'est tres utile !