Maison > Article > développement back-end > Comment déterminer si une chaîne est un entier en php
Deux méthodes : 1. Utilisez intval() pour convertir la chaîne en une valeur entière, puis utilisez l'opérateur "==" pour déterminer si la valeur entière est égale à la chaîne d'origine. La syntaxe est "intval($str. )==$str" , s'ils sont égaux, ce sont des entiers. 2. Utilisez is_numeric() et strpos() pour déterminer si la chaîne est une chaîne numérique sans point décimal. La syntaxe est "!is_numeric($str)||strpos($str,".")!==false". et return false est un entier, et vice versa ne l'est pas.
L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 8.1, ordinateur DELL G3
Deux méthodes pour PHP pour déterminer si une chaîne est un entier
Méthode 1 : Utiliser le Fonction intval() Utilisez l'opérateur "==" pour déterminer si la valeur entière est égale à la chaîne d'origine
Méthode 2 : utilisez la fonction is_numeric() et la fonction strpos() pour déterminer
Utilisez strpos () Déterminez si le nombre contient une virgule décimale - excluez les nombres à virgule flottante
Jugez simplement si le string est une chaîne numérique qui ne contient pas de point décimal
<?php header("Content-type:text/html;charset=utf-8"); function f($str){ $result = intval($str); if($result==$str){ echo "$str 字符串是整数<br><br>"; } else{ echo "$str 字符串不是整数<br><br>" ; } } f("a678"); f("678"); f("3.14"); ?>
intval() renvoie la valeur entière de la variable var en utilisant la conversion de base spécifiée (la valeur par défaut est décimale). intval() ne peut pas être utilisé avec un objet, sinon une erreur E_NOTICE sera générée et 1 sera renvoyé.
<?php header("Content-type:text/html;charset=utf-8"); function f($str){ if(!is_numeric($str)||strpos($str,".")!==false){ echo "$str 字符串不是整数<br><br>"; }else{ echo "$str 字符串是整数<br><br>"; } } f("a678"); f("3.14"); f("67854"); ?>
Description du paramètre :
$var : la valeur de la quantité à convertir en entier.
$base : la base utilisée pour la conversion.
Si base est 0, déterminez la base utilisée en détectant le format de var :
Si la chaîne inclut le préfixe "0x" (ou "0X"), utilisez hexadécimal (hex) Sinon,
si la chaîne commence par "0", utilisez octal ; sinon,
utilisera décimal.
Valeur de retour
La valeur entière de var est renvoyée en cas de succès et 0 est renvoyée en cas d'échec. Un tableau vide renvoie 0, un tableau non vide renvoie 1.
La valeur maximale dépend du système d'exploitation. La plage maximale d'entiers signés sur les systèmes 32 bits est comprise entre -2147483648 et 2147483647. Par exemple, sur un tel système, intval('1000000000000') renverrait 2147483647. Sur un système 64 bits, la valeur entière signée maximale est 9223372036854775807.
Les chaînes peuvent renvoyer 0, bien que cela dépende du caractère le plus à gauche de la chaîne.
La fonction is_numeric() est utilisée pour détecter si une variable est un nombre ou une chaîne numérique.
int intval ( mixed $var [, int $base = 10 ] )
Valeur de retour
Si la variable spécifiée est un nombre ou une chaîne numérique, elle renvoie VRAI, sinon elle renvoie FAUX. Notez que le type à virgule flottante renvoie 1, qui est VRAI.
la fonction strpos() trouve la première occurrence d'une chaîne dans une autre chaîne (sensible à la casse).
bool is_numeric ( mixed $var )
$trouver : obligatoire. Spécifie les caractères à rechercher.
$start : Facultatif. Spécifie l'emplacement à partir duquel démarrer la recherche.
Valeur de retour :
Renvoie la position de la première occurrence d'une chaîne dans une autre chaîne, ou renvoie FALSE si la chaîne n'est pas trouvée. Remarque : La position de la chaîne commence à 0 et non à 1.
Apprentissage recommandé : "
Tutoriel vidéo PHPCe qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!