Commande strcmp
Résolu
fhav
Messages postés
252
Date d'inscription
Statut
Membre
Dernière intervention
-
Dalida Messages postés 6728 Date d'inscription Statut Contributeur Dernière intervention -
Dalida Messages postés 6728 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
en fait en étudiant le php , j'ai trouvé cette ligne de commande
if (strcmp($v_log['log'], $login))
{
traitement 1
}
else {
traitement 2
}
peut-on écrire ça ?
moi je pensai que strcmp retourne une valeur positive ou négative
quelqu'un peu m'expliquer ça ?
thanks a lot
en fait en étudiant le php , j'ai trouvé cette ligne de commande
if (strcmp($v_log['log'], $login))
{
traitement 1
}
else {
traitement 2
}
peut-on écrire ça ?
moi je pensai que strcmp retourne une valeur positive ou négative
quelqu'un peu m'expliquer ça ?
thanks a lot
A voir également:
- Commande strcmp
- Invite de commande - Guide
- Commande terminal mac - Guide
- Commande dism - Guide
- Diskpart commande - Guide
- Commande scannow - Guide
3 réponses
salut,
moi je pensai que strcmp retourne une valeur positive ou négative
c'est bien ça.
quelqu'un peu m'expliquer ça ?
en fait le test indique si les chaînes sont différentes (le résultats est positif ou négatif ce qui une fois converti en booléen donne TRUE) ou identiques (le résultat est égal à zéro, converti en FALSE).
moi je pensai que strcmp retourne une valeur positive ou négative
c'est bien ça.
quelqu'un peu m'expliquer ça ?
en fait le test indique si les chaînes sont différentes (le résultats est positif ou négatif ce qui une fois converti en booléen donne TRUE) ou identiques (le résultat est égal à zéro, converti en FALSE).
if (strcmp($v_log['log'], $login)) // si le retour vaut autre chose que 0, c-à-d TRUE { traitement 1 } else { // sinon le retour vaut 0, c-à-d FALSE traitement 2 }
soit dit en passant, pour avoir un code plus propre et plus sûr il faudrait tester réellement la valeur de retour (et non pas la conversion), donc tester aussi le type.
la plus simple est d'inverser la condition
la plus simple est d'inverser la condition
if (strcmp($v_log['log'], $login) === 0) // là tu es sûr que la fonction a bien retourné 0 et pas simplement quelque chose d'équivalent à FALSE { traitement 2 } else { traitement 1 }