php验证变量类型、变量值、验证函数

2021-03-20

验证变量类型

// 是返回true,否返回false

// 判断变量$var是否为字符串
is_string($var);

// 判断变量$var是否为数组
is_array($var);

// 判断变量$var是否为布尔值
is_bool($var);

// 判断变量$var是否为浮点数
is_float($var);

// 判断变量$var是否为整数
is_int($var);

// 判断变量$var是否为数字或数字字符串
is_numeric($var);

// 判断变量$var是否为null
is_null($var);

// 判断变量$var是否为对象
is_object($var);

// 判断变量$var是否为资源
is_resource($var);

// 判断变量$var是否为标量,标量为(int、float、string、bool)
is_scalar($var);

// 判断变量$var是否可迭代(实现Traversable的数组或对象)
is_iterable($var);

// 判断变量$var是否可统计(实现Countable的数组或对象)
is_countable($var);

验证函数

// 验证$name是否为回调
is_callable($name);

// 判断函数$function_name是否存在
function_exists($function_name);

Ctype--检测字符串类型

检测一个字符或者字符串是否仅包含指定类型的字符。传入空字符串总是会返回 false。传入除整数和字符串之外的参数会立即返回 false。

// 是返回true,否返回flase

// 检查提供的text是否全部为字母和数字字符
ctype_alnum($text);

// 检查提供的text里面的所有字符是否只包含字符
ctype_alpha($text);

// 检查提供的text里面的字符是否都是数字
ctype_digit($text);

// 检查提供的text里面的字符是否都是小写字母
ctype_lower($text);

// 检查提供的text里面的字符是否都是大写字母
ctype_upper($text);

// 检查提供的text里面的字符是否都是控制字符。 控制字符例如:换行、缩进、空格
ctype_cntrl($text);

// 检查提供的text里面的字符是否都是标点符号(不包含空白、数字和字母)
ctype_punct($text);

// 检查提供的text里面的字符输出是否可见(不包含空白)
ctype_graph($text);

// 检查提供的text里面的字符是否都是空白, 
// 除了空白字符,还包括缩进,垂直制表符,换行符,回车和换页字符。
ctype_space($text);

// 检查提供的text里面的字符是否都是可以打印出来。
// 如果在当前的语言环境下text里面的每个字符都能被实际输出(包括空白)就返回true;
// 如果text里面包含控制字符或者不会输出任何字符就返回 false 。
ctype_print($text);

// 检查提供的text里面的字符是否都是十六进制字符串
ctype_xdigit($text);

验证变量值

// 变量为1、true、on、yes时返回true,否则返回false
filter_var($var, $filter = FILTER_VALIDATE_BOOLEAN);

// 验证电子邮件是否有效,根据RFC 822中的语法验证电子邮件地址,但不支持注释和空格折叠以及无点域名。有效返回变量的值否则返回false
filter_var($var, $filter = FILTER_VALIDATE_EMAIL);

// 验证值是否为float,如果值不是float返回false否则返回转换后的float值
filter_var($var, $filter = FILTER_VALIDATE_FLOAT);

// 验证值是否为int,如果值不是int返回false否则返回转换后的int值
filter_var($var, $filter = FILTER_VALIDATE_INT);

// 验证值是否为IP地址,值为IP地址返回变量的值否则返回false
filter_var($var, $filter = FILTER_VALIDATE_IP);

// 验证值是否为url,值为url返回变量的值否则返回false
filter_var($var, $filter = FILTER_VALIDATE_URL);

 

{/if}