Maison  >  Article  >  développement back-end  >  Vous apprendre à utiliser les fonctions PHP pour détecter le type de variables

Vous apprendre à utiliser les fonctions PHP pour détecter le type de variables

青灯夜游
青灯夜游original
2021-08-05 19:09:255768parcourir

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(&#39; &#39;) ."<br>";
echo gettype(null) ."<br>";
echo gettype(array()) ."<br>";
echo gettype(new stdclass());
?>

看看输出结果:

Vous apprendre à utiliser les fonctions PHP pour détecter le type de variables

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 = &#39;654321&#39;;
$float = 3.1415926;
$str3 = &#39;hello!&#39;;
class foo {
	function dosomething() {
		echo "你好!";
	}

}

$obj = new foo();
if (is_array($arr))
	echo &#39;$arr 是数组&#39;;
echo &#39;<br>&#39;;
if (!is_array($num1))
	echo &#39;$num1 不是数组&#39;;
echo &#39;<br>&#39;;
if (is_numeric($str2))
	echo &#39;$str2 是数字&#39;;
echo &#39;<br>&#39;;
if (is_bool($bool))
	echo &#39;$bool 是数字&#39;;
echo &#39;<br>&#39;;
if (is_float($float))
	echo &#39;$float 是浮点类型&#39;;
echo &#39;<br>&#39;;
if (!is_float($str2))
	echo &#39;$str2 不是浮点类型&#39;;
echo &#39;<br>&#39;;
if (is_int($num1))
	echo &#39;$num1 是整数类型&#39;;
echo &#39;<br>&#39;;
if (!is_int($float))
	echo &#39;$float 不是整数类型&#39;;
echo &#39;<br>&#39;;
if (is_string($str2))
	echo &#39;$str2 是字符串&#39;;
echo &#39;<br>&#39;;
if (is_object($obj))
	echo &#39;$obj 是一个对象&#39;;
echo &#39;<br>&#39;;
if (!isset($str1))
	echo &#39;$str1 未定义或则值为 NULL&#39;;
?>

看看输出结果:

Vous apprendre à utiliser les fonctions PHP pour détecter le type de variables

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)

Jetons d'abord un coup d'œil à l'exemple suivant :

rrreeeRegardez le résultat :

Vous apprendre à utiliser les fonctions PHP pour détecter le type de variables

La fonction gettype() peut obtenir et renvoyer le type de la variable, et la valeur de retour peut être :

  • 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🎜
🎜la fonction gettype() s'exécute plus lentement car elle contient une comparaison de chaînes. En plus de cette fonction, nous pouvons également utiliser la série de fonctions is_* pour détecter le type de variables. 🎜🎜Regardons l'exemple suivant : 🎜rrreee🎜Regardez le résultat : 🎜🎜Vous apprendre à utiliser les fonctions PHP pour détecter le type de variables🎜🎜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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn