Les variables sont au cœur de PHP. Avant d'utiliser une variable, nous devons d'abord déterminer à quel type appartient la variable. Alors comment détecter le type de variable en PHP ? L'article suivant vous présentera plusieurs fonctions de PHP pour détecter les types de variables.
PHP fournit de nombreuses fonctions pour détecter les types de données, mais elles peuvent être grossièrement divisées en deux types : la fonction gettype() et la fonction de classe is_*
. Jetons un coup d'œil à travers un exemple de code. is_*
类函数。下面我们通过代码示例来了解一下。
我们先来看看下面一个例子:
<?php echo gettype(102) ."<br>"; echo gettype(true) ."<br>"; echo gettype(' ') ."<br>"; echo gettype(null) ."<br>"; echo gettype(array()) ."<br>"; echo gettype(new stdclass()); ?>
看看输出结果:
gettype()函数可以获取并返回变量的类型,返回值可以为:
boolean
integer
double
(从 PHP 4 起,如果是 float 就返回“double”,而不是“float”了)
string
array
object
resource
(资源)
resource是一种特殊的变量类型,保存了到外部资源的一个引用;它主要描述一个 PHP 的扩展资源。resource(资源)是通过专门的函数来建立和使用的。
NULL
NULL 也是一种特殊的数据类型,它只有一个值,即 NULL,表示空值(即变量没有值)。
unknown type
gettype()函数由于包含了字符串的比较,因此运行是较慢的。除了这个函数外,我们还可以使用is_*
系列函数来检测变量的类型。
我们来看看下面一个例子:
<?php header("Content-type:text/html;charset=utf-8"); $num1 = 123456; $arr = array(1, 2, 3, 4, 5, 6, 7); $bool = false; $str1 = NULL; $str2 = '654321'; $float = 3.1415926; $str3 = 'hello!'; class foo { function dosomething() { echo "你好!"; } } $obj = new foo(); if (is_array($arr)) echo '$arr 是数组'; echo '<br>'; if (!is_array($num1)) echo '$num1 不是数组'; echo '<br>'; if (is_numeric($str2)) echo '$str2 是数字'; echo '<br>'; if (is_bool($bool)) echo '$bool 是数字'; echo '<br>'; if (is_float($float)) echo '$float 是浮点类型'; echo '<br>'; if (!is_float($str2)) echo '$str2 不是浮点类型'; echo '<br>'; if (is_int($num1)) echo '$num1 是整数类型'; echo '<br>'; if (!is_int($float)) echo '$float 不是整数类型'; echo '<br>'; if (is_string($str2)) echo '$str2 是字符串'; echo '<br>'; if (is_object($obj)) echo '$obj 是一个对象'; echo '<br>'; if (!isset($str1)) echo '$str1 未定义或则值为 NULL'; ?>
看看输出结果:
is_* 系列中多个作用不同的函数,可以利用这些函数来分别检查变量的数据类型。下面我们来看看常用的几个检查函数:
1、is_int():检测变量$var
是否为整数类型(integer),如果$var
是则返回TRUE,否则返回 FALSE;语法“is_int($var)
”,别名为is_integer()。
2、is_float():检测变量$var
是否为浮点型,如果$var
是则返回TRUE,否则返回 FALSE;语法“is_float($var)
”,别名为is_real()。
3、is_string():检测变量$var
是否为字符串型,如果$var
是则返回TRUE,否则返回 FALSE;语法“is_string($var)
”。
4、is_array():检测变量$var
是否为数组,如果$var
是则返回TRUE,否则返回 FALSE;语法“is_array($var)
”。
5、is_object():检测变量$var
是否是一个对象,如果$var
是则返回TRUE,否则返回 FALSE;语法“is_object($var)
”。
6、is_numeric():检测变量$var
是否为数字或者数字字符串,如果$var
是则返回TRUE,否则返回 FALSE;语法“is_numeric($var)
rrreeeRegardez le résultat :
booléen
🎜entier
🎜double code> (à partir de PHP 4, s'il s'agit d'un float, il renverra "double" au lieu de "float") 🎜
string
🎜tableau🎜
objet
🎜ressource
(ressource)🎜🎜la ressource est un type de variable spécial, enregistre une référence à une ressource externe ; il décrit principalement une ressource d'extension PHP. Les ressources sont créées et utilisées via des fonctions spécialisées. 🎜🎜NULL
🎜🎜NULL est également un type de données spécial. Il n'a qu'une seule valeur, NULL, ce qui signifie une valeur nulle (c'est-à-dire que la variable n'a aucune valeur. ). 🎜🎜type inconnu
🎜is_*
pour détecter le type de variables. 🎜🎜Regardons l'exemple suivant : 🎜rrreee🎜Regardez le résultat : 🎜🎜🎜🎜is_* Il existe plusieurs fonctions avec différentes fonctions dans la série. Vous pouvez utiliser ces fonctions pour vérifier respectivement le type de données des variables. Jetons un coup d'œil à plusieurs fonctions de vérification couramment utilisées : 🎜🎜1. is_int() : Vérifiez si la variable $var
est de type entier (entier), si $var
is Renvoie VRAI, sinon renvoie FAUX ; la syntaxe est "is_int($var)
", et l'alias est is_integer(). 🎜🎜2. is_float() : Vérifiez si la variable $var
est de type virgule flottante. Si $var
l'est, elle renvoie VRAI, sinon elle renvoie la syntaxe " FAUX ; is_float ($var)
", alias is_real(). 🎜🎜3. is_string() : Vérifiez si la variable $var
est de type chaîne. Si $var
est, retournez VRAI, sinon retournez la syntaxe "". is_string ($var)
". 🎜🎜4. is_array() : Vérifiez si la variable $var
est un tableau. Si $var
l'est, renvoyez VRAI, sinon renvoyez la syntaxe "is_array ; ($var)
". 🎜🎜5. is_object() : Vérifiez si la variable $var
est un objet. Si $var
l'est, renvoyez VRAI, sinon renvoyez la syntaxe "is_object ; ( $var)
". 🎜🎜6. is_numeric() : Vérifiez si la variable $var
est un nombre ou une chaîne numérique. Si $var
l'est, renvoyez VRAI, sinon renvoyez la syntaxe " FAUX ; is_numeric($var)
". 🎜🎜D'accord, c'est tout. Si vous voulez savoir autre chose, vous pouvez cliquer ici. → →🎜Tutoriel vidéo php🎜🎜🎜Enfin, je recommande un tutoriel vidéo gratuit sur les tableaux PHP : 🎜Explication vidéo de la fonction tableau de fonctions PHP🎜, venez apprendre ! 🎜Ce 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!