教你使用PHP函数来检测变量的类型
时间:2021-08-14
来源:互联网
今天PHP爱好者给大家带来变量是PHP的核心,我们在操作变量前,都需要先弄清该变量属于什么类型。那么在PHP中要如何检测变量类型?下面这篇文章就来给大家介绍一下PHP检测变量类型的几种函数。希望对大家有所帮助。
PHP中提供了许多检测数据类型的函数,但大致可以分为两种:gettype()函数和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)
”。
好了就说到这里了,有其他想知道的,可以点击这个哦。→ →php视频教程
以上就是教你使用PHP函数来检测变量的类型的详细内容,更多请关注php爱好者其它相关文章!
-
依赖注入的概念和原理 依赖注入的三种实现方式 依赖注入的生命周期 时间:2025-05-03
-
系统可用性和可靠性如何检测 系统可用性和可靠性的区别 时间:2025-05-03
-
oracle中imp命令详解(基本语法、参数、常用选项) 时间:2025-05-03
-
分词器的概念 分词器的作用和原理 分词器有哪些 时间:2025-05-03
-
什么是telnet?如何使用telnet命令? 时间:2025-05-03
-
什么是TensorFlow TensorFlow安装指南 时间:2025-05-03
今日更新
-
怎么将Nodejs中的buffer转为JSON格式和UTF
阅读:18
-
解决WAMP打开phpMyAdmin却出现错误的问题
阅读:18
-
PHP函数库概览
阅读:18
-
PHP字符串学习之判断子串是不是存在(大小写不敏感)
阅读:18
-
PHP数组学习之随机获取多个元素
阅读:18
-
宝塔的运维版怎么开通使用
阅读:18
-
SQL server分页方法有哪些
阅读:18
-
php如何使用“自然”算法知道字符串的异同
阅读:18
-
一分钟带你使用ps在图片上添加一个月亮(分享)
阅读:18
-
php文件操作之如何一次性获得文件的全部数据
阅读:18