本篇内容介绍了“怎么使用PHP函数来检测变量的类型”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站设计、成都网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的吐鲁番网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
PHP中提供了许多检测数据类型的函数,但大致可以分为两种:gettype()函数和is_*
类函数。下面我们通过代码示例来了解一下。
我们先来看看下面一个例子:
"; echo gettype(true) ."
"; echo gettype(' ') ."
"; echo gettype(null) ."
"; echo gettype(array()) ."
"; 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_*
系列函数来检测变量的类型。
我们来看看下面一个例子:
'; if (!is_array($num1)) echo '$num1 不是数组'; echo '
'; if (is_numeric($str2)) echo '$str2 是数字'; echo '
'; if (is_bool($bool)) echo '$bool 是数字'; echo '
'; if (is_float($float)) echo '$float 是浮点类型'; echo '
'; if (!is_float($str2)) echo '$str2 不是浮点类型'; echo '
'; if (is_int($num1)) echo '$num1 是整数类型'; echo '
'; if (!is_int($float)) echo '$float 不是整数类型'; echo '
'; if (is_string($str2)) echo '$str2 是字符串'; echo '
'; if (is_object($obj)) echo '$obj 是一个对象'; echo '
'; 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函数来检测变量的类型
分享地址:http://lswzjz.com/article/pjohhi.html