对于我们编程人员来说,用户传递的数据都是不可信的,你无法确定给你传递数据的是谁?传递的是什么数据?是不是符合你的预期?接受数据的函数或方法是否有能力处理?所以,凡是用户传递来的数据,都有进行有效的验证。除此之外,函数或方法之间数据的传递也要进行适当的验证,以保证程序的茁壮性!
大家都知道,程序 = 数据结构 + 算法,简而言之,程序就是程序员用程序把用户传递过来的数据处理好,并按照需求返回给用户的过程。可见,数据流淌在整个程序中,是非常重要的。废话不说,在介绍PHP内置函数之前,先来复习一下,PHP中的数据类型。当然,PHP中细究起来,还有callback等其他数据类型,这里就不做介绍,仅介绍常见常用的八种数据类型。
PHP八种数据类型
数据类型 描述 boolean(布尔型) 布尔型是最简单的数据类型,只有两个值 false(假) 和true(真) string(字符串型) 字符串就是连续的字符序列,如 ehco "string"; integer(整型) 整型数据类型只能包含整数,这些数据类型可以是负数或者正数 folat(浮点型) 浮点型类型用于存储数字,和整型不同的是浮点型可以有小数点 array(数组) 一组相同类型的集合 object(对象) 对象是一个实力,使用new命令创建一个对象 resource(资源) 资源是一种特殊的变量,保存在外部资源的一个应用,资源是通过函数来进行建立的 null( 空白) 特殊的值,表示变量没有值,任何变量的初始值都是null
标量数据类型 : boolean integer string float 4种
复合数据类型 : array object 2种
特殊数据类型 : resource null 2种
1. 对数据类型进行判断
is_bool($var) | 判断是否布尔数据类型 |
is_int($var) in_integer($var) | 判断是否是整型数据类型 |
is_float($var) is_real is_double($var) | 判断是否浮点数据类型 |
is_string($var) | 判断是否是字符串数据类型 |
is_array($var) | 判断是否是数字数据类型 |
is_object($var) | 判断是否是对象数据类型 |
is_null($var) | 判断是否是NULL数据类型 |
is_resource($var) | 判断是否是资源数据类型 |
八种数据类型,除了布尔 boolean外,其他均有自己名称判断函数。除此之外还有比较常用的函数。
is_numeric($var) | 判断是否数字类型,就是 integer 和 float类型的集合 |
is_scalar($var) | 变量是否为标量(整数,浮点数,布尔,字符串) |
is_callable($var) | 判断是否是有效的函数名 |
is_dir($var) | 判断是否是目录 |
is_file($var) | 判断是否是文件 |
还有一个需要注意的问题,由于PHP是弱类型的程序语言,在数据类型判断的过程中,会自动进行数据类型的转换。
2. 判断是否存在的函数
isset() | 判断变量是否存在,如果变量存在,且不为NULL,返回TRUE,其他为FALSE |
empty() | 判断变量是否为空,若变量存在且其值为""、0、"0"、NULL、、FALSE、 array()、$var; 以及没有任何属性的对象,则返回 TURE,其他返回 FALSE |
function_exists() | 判断函数是否存在 |
class_exists() | 判断类是否存在 |
后续慢慢整理,今天先到这里!