IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Fonction vérifier entier [Fait]


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    716
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 716
    Points : 112
    Points
    112
    Par défaut Fonction vérifier entier
    QUel est la fonction pour vérifier si une variable est un entier?

  2. #2
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    bah heu... is_int()...
    la doc, c'est sur www.php.net...

  3. #3
    Expert éminent
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Points : 8 339
    Points
    8 339
    Par défaut
    ou plus strict : ici ça vérifie vraiment le type de $a

    ou plus large : après ça $a EST un entier

  4. #4
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    716
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 716
    Points : 112
    Points
    112
    Par défaut
    pas très cool cette fonction

    if($a == intval($a))
    je recupère la chaine 10 de mon formulaire et il me di ke c pas un entier super

  5. #5
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    Citation Envoyé par franfr57
    pas très cool cette fonction

    if($a == intval($a))
    je recupère la chaine 10 de mon formulaire et il me di ke c pas un entier super
    Et ma réponse à moi, elle te plait pas ? lol

  6. #6
    Membre actif
    Inscrit en
    Janvier 2004
    Messages
    242
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 242
    Points : 271
    Points
    271
    Par défaut
    if(is_numeric($_POST['toto'])){}

    si ça provient d'un formulaire sinon is_int va croire que c'est une chaine de caractere.

  7. #7
    Expert éminent
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Points : 8 339
    Points
    8 339
    Par défaut
    après lecture de la doc (lien d'Eusebius) il faut utiliser is_numeric plutôt

    en même temps... PHP étant faiblement typé... ça sert vraiment à quelque chose de testé le type ? perso je fait un cast strict (intval), et hop... c'est pas un entier, 0, c'est un entier avec des trucs derrière ça prend l'entier, et c'est un entier, ça prend un entier...

  8. #8
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    Citation Envoyé par Swoög
    après lecture de la doc (lien d'Eusebius) il faut utiliser is_numeric plutôt
    La question, à l'origine, concernait les entiers...

    is_numeric te répondrait true pour 1.0 ou n'importe quel float.

  9. #9
    Membre averti Avatar de sourivore
    Homme Profil pro
    Lead Tech Front-End
    Inscrit en
    Juin 2005
    Messages
    451
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lead Tech Front-End

    Informations forums :
    Inscription : Juin 2005
    Messages : 451
    Points : 334
    Points
    334
    Par défaut
    Avec la regexp suivante :

  10. #10
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    716
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 716
    Points : 112
    Points
    112
    Par défaut
    comment je met regexp?

  11. #11
    Membre averti Avatar de sourivore
    Homme Profil pro
    Lead Tech Front-End
    Inscrit en
    Juin 2005
    Messages
    451
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lead Tech Front-End

    Informations forums :
    Inscription : Juin 2005
    Messages : 451
    Points : 334
    Points
    334
    Par défaut
    C'est pas une fonction c'est une expression régulière je voulais dire

  12. #12
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 012
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 012
    Points : 1 093
    Points
    1 093
    Par défaut
    Citation Envoyé par franfr57
    pas très cool cette fonction

    if($a == intval($a))
    je recupère la chaine 10 de mon formulaire et il me di ke c pas un entier super
    oui cela arrive, parce que 10 est stocké en variant et fait peut-être 9.99999999999999999

    donc il faut faire la différence entre $a et intval($a), et voir si cette différence est inférieure à epsilon.
    par exemple, tu mets epsilon à 0.0001 en fonction de la précision souhaitée.
    ne pas oublier que cette différence est parfois négative, et de ce fait inférieure à epsilon. donc passer par la fonction absolu ...

  13. #13
    Membre averti Avatar de sourivore
    Homme Profil pro
    Lead Tech Front-End
    Inscrit en
    Juin 2005
    Messages
    451
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lead Tech Front-End

    Informations forums :
    Inscription : Juin 2005
    Messages : 451
    Points : 334
    Points
    334
    Par défaut
    De toute façon dès que tu as à tester le format d'une chaîne passe par les expressions régulières

  14. #14
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    716
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 716
    Points : 112
    Points
    112
    Par défaut
    comment je peut utiliser cet expression régulière alors?

  15. #15
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Salut

    Voici un lien, puisque c'est nécessaire
    http://cyberzoide.developpez.com/php4/regex/

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Fonction à vérifier : 'return' brouillé :/
    Par Havran dans le forum Débuter
    Réponses: 11
    Dernier message: 03/02/2008, 13h46
  2. Fonctions test entier et test carré
    Par piotrr dans le forum Général Python
    Réponses: 4
    Dernier message: 19/11/2007, 16h55
  3. Fonction vérifier syntaxe de date OK sur IE et KOs sur firefox
    Par aymen007 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 17/10/2007, 16h16
  4. Fonction "Vérifier les noms" dans Outlook
    Par vciofolo dans le forum Access
    Réponses: 2
    Dernier message: 15/03/2006, 08h35
  5. [Mail] comment vérifier entierement une url ?
    Par italiasky dans le forum Langage
    Réponses: 18
    Dernier message: 07/02/2006, 14h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo