PHP vérifier si la variable est un nombre entier

j'ai ce code PHP:

$entityElementCount = (-($highScore-$totalKeywordCount))/0.29;

ce que je veux savoir est, comment vérifier si $entityElementCount est un nombre entier (2, 6, ...) ou partielle (2.33, 6.2, ...).

Merci!

25
demandé sur spacemonkey 2010-02-03 02:55:04

14 réponses

$entityElementCount = (-($highScore-$totalKeywordCount))/0.29;
if (ctype_digit($entityElementCount) ){
    // (ctype_digit((string)$entityElementCount))  // as advised.
    print "whole number\n";
}else{
    print "not whole number\n";
}
18
répondu ghostdog74 2010-02-03 03:26:32
if(floor($number) == $number)
35
répondu Tyler Carter 2010-02-02 23:56:01

je sais que c'est vieux, mais je pensais que je voudrais partager quelque chose que je viens de trouver:

Utiliser fmod et cochez 0

$entityElementCount = (-($highScore-$totalKeywordCount))/0.29;
if (fmod($entityElementCount,1) != 0) {
    echo 'Not a whole number!';
} else {
    echo 'A whole number!';
}

fmod est différent de % parce que si vous avez une fraction, % ne semble pas fonctionner pour moi (elle renvoie 0...par exemple, echo 9.4 % 1; sortie