php 判断变量类型常用的函数主要有下列几个:

gettype()、is_array()、is_bool()、is_float()、is_double()、is_integer()、is_null()、is_numeric()、is_object()、is_resource()、is_scalar() 和 is_string()

现在让我们了解下他们的具体的使用方法

gettype() 返回 PHP 变量的类型,返回的字符串的可能值为以下几种:

boolean(从 PHP 4 起)

integer

double(由于历史原因,如果是 float 则返回double,而不是float)

string

array

object

resource(从 PHP 4 起)

NULL(从 PHP 4 起)

user function(只用于 PHP 3,现已停用)

unknown type

注意:对于 PHP 4及以上,你应该使用 function_exists() 和 method_exists() 取代先前将 gettype() 作用于函数的用法。

这个函数大家应该很少用,其实对于这个函数也尽量不要用。php手册的建议是:不要使用 gettype() 来测试某种类型,因为其返回的字符串在未来的版本中可能需要改变。此外,由于包含了字符串的比较,它的运行也是较慢的,所以尽量使用 is_* 函数代替。

is_array() 判断是否是数组,返回值为true或者false。

is_bool() 判断是否是boolean类型的变量,返回值为true或者false

is_float() 判断是否是浮点类型的变量,返回值为true或者false。注意:这里是检查数据类型的,浮点数字型变量和浮点数字符串类型的变量返回的结果是不一样的。

is_double 判断变量类型是否为倍浮点数类型,返回值为true或者false。这个基本同 is_float 一样,主要区别就是在小数点后面数字长度达到一定长度后,is_float 可能返回false,而 is_double 会依旧返回 true;

is_integer() 此函数是 is_int() 的别名函数,判断是否是整数类型的变量,返回值为true或者false。注意:对于正整数,负整数和0的数字类型变量,该函数都返回true,其他都返回空(包括字符串类型的整数);

is_null() 判断是否为NULL,返回值为true或者false。注意这里不是空,只有被判断的值为大小写不敏感的null的时候,才会返回true,对于'',0或者'0'他都将返回false;那么在php里面一个变量什么时候才会被认为是NULL的呢?

php手册里面说到,在下列情况下一个变量会被认为是 NULL:

(1)被赋值为 NULL。

(2)尚未被赋值。

(3)被 unset()。

is_numeric() 判断是否是数字,返回值为true或者false。这个函数判断条件非常宽松,只要是数字,无论你是字符串类型的,还是数字类型,无论是正的,负的,0,还是浮点数,都将返回true。其他则返回false。

is_object() 检测变量是否是一个对象,返回值为true或者false。

is_resource() 用于检测变量是否为资源类型,返回值为true或者false。

is_scalar() 检测变量是否是一个标量,返回值为true或者false。

is_string() 检测变量是否是字符串类型,返回值为true或者false。这里可以理解为他只检测类型,即使一个变量为空,只要是字符串类型,他也会返回 true;

php查询变量类型,php判断变量类型常用方法相关推荐

  1. JavaScript 变量克隆和判断变量类型

    一.变量克隆 在js中经常会遇到将一个变量赋值给一个新的变量这种情况,这对于基本类型很容易去实现,直接通过等号赋值就可以了,对于引用类型就不能这样了.(注:像函数,正则也可以直接通过等号赋值) 这里我 ...

  2. html判断变量,javascript如何判断变量是否为对象?

    javascript可以使用用typeof判断简单类型变量是否对象.也可以使用instanceof.constructor.Object.prototype.toString.call()判断变量是否 ...

  3. java判断浏览器类型_判断浏览器类型

    一.判断是否为IE 以前判断是否IE浏览器用的是window.navigator.userAgent,跟踪这个信息,发现在开发环境,识别为IE10,但访问服务器则识别为IE11,但IE11的userA ...

  4. 用java判断三角形类型_判断三角形类型

    假期无聊,继续九度OJ刷题,每天几道题,强制编程人啊! 三角形判断的方法: 直角三角形:勾股定理 锐角和钝角三角形:余玄定理 题目描述:给定三角形的三条边,a,b,c.判断该三角形类型. 输入:测试数 ...

  5. shell脚本 定义一个变量 if else判断变量是否等于某个值

    好的,那么 shell 脚本中定义一个变量的方法是: 变量名=变量值 例如: myvar=hello 定义了一个名为 "myvar" 的变量,值为 "hello" ...

  6. python中none算变量吗_python 判断变量是否是 None 的三种写法

    代码中经常会有变量是否为None的判断,有三种主要的写法: 第一种是if x is None: 第二种是 if not x:: 第三种是if not x is None(这句这样理解更清晰if not ...

  7. php 判断不是文件类型,php 判断文件类型

    [php]代码库$files = array ( 'c:\1.jpg', 'c:\1.png', 'c:\1.gif', 'c:\1.rar', 'c:\1.zip', 'c:\1.exe', ); ...

  8. java 判断文件的类型,用java流方式判断文件类型

    这个方法只能在有限的范围内有效.并不是万金油 比如 图片类型判断,音频文件格式判断,视频文件格式判断等这种肯定是2进制且专业性很强的文件类型判断. 下面给出完整版代码 首先是文件类型枚取 packag ...

  9. Python 日期类型字符判断

    Python 日期类型字符判断 日期类型判断 需要判断一个字符串是否为日期类型时用time库 具体如下: import time str = 'Dec 8 18:06:34' date_format ...

最新文章

  1. java 3gpp转mp3_Android音频以及音频播放器开发实例
  2. 华为MateRS巴黎大皇宫首秀 专为保时捷跑车70周年高定手机
  3. css3 box-sizing:border-box 实现div一行多列
  4. Cadence 16.3 使用步骤
  5. android studio 退出编译,Android studio用什么命令可以退出当前应用
  6. linux安装无线电软件,基于Linux的软件无线电系统软件平台的研究与实现
  7. 太难得了!大厂数据分析实战项目资料首次公开!免费,速领!
  8. 将py文件打包成exe可执行文件
  9. V - 不容易系列之(4)――考新郎(第二季水)
  10. 苹果决定不修复 Big Sur 和 Catalina 中的这两个0day
  11. RFID技术为智能轮胎在未来车联网领域的应用奠定了基础
  12. atlas 力矩计算_Atlas Copco基本拧紧技术
  13. 分布式和微服务_太难了!阿里三面凉透~ Spring+高并发+算法+分布式微服务等等一个都没讲不清...
  14. python多线程互斥锁_Python中线程互斥锁是什么
  15. 突破asp过滤系统入侵网站
  16. 第四届“传智杯”全国大学生IT技能大赛(练习赛)【完结】
  17. SAXReader的使用
  18. fw325r没有虚拟服务器,迅捷fw325r路由器设置完没有网怎么办?
  19. 【C语言】如何用C语言画一个哆啦A梦(附源代码)
  20. html去除分页符,分页符怎么删除 删除分页符的两种方法

热门文章

  1. 离婚从来不是解决家庭危机的唯一办法
  2. Leetcode--198. 打家劫舍
  3. png文件合并_png格式图片和jpg格式图片有什么区别?
  4. linux emmc vfs错误,Hi3519a EMMC挂载EXT4文件系统失败
  5. qtablewidget 选中不改变背景_C4D制作不一样的核壳结构
  6. oracle 批量 重建索引,Oracle重建索引Shell脚本、SQL脚本分享
  7. php知识点_PHP那些琐碎的知识点(整理)
  8. python如何查看有什么模块_在python中如何查看模块功能
  9. C++ delete只能用来释放new分配的内存
  10. 数字图像处理学习笔记(一):特征检测和匹配概述