判断数据类型 - PHP

PHP中判断数据类型的方法,我总结了一下。

你想偷懒?我不建议使用gettype() 函数

不要使用 gettype() 来测试某种类型,因为其返回的字符串在未来的版本中可能需要改变。此外,由于包含了字符串的比较,它的运行也是较慢的。使用 is_* 函数代替。

<?php
echo gettype(102) . PHP_EOL;
echo gettype(true) . PHP_EOL;
echo gettype(' ') . PHP_EOL;
echo gettype(null) . PHP_EOL;
echo gettype(array()) . PHP_EOL;
echo gettype(new stdclass());
?>

输出

integer
boolean
string
NULL
array
object

JSON

<?php
 if(json_decode($arr_site)){

    echo '变量 $arr_site 是一个JSON';

} else {

    echo '变量 $arr_site 不是一个JSON';

}
?>

数组

php判断变量是不是数组的方法是:可以通过is_array()函数来实现。函数语法:

bool is_array(mixed $var)

如果检测的变量是数组,则返回TRUE,否则返回FALSE。

<?php

$arr_site = array('Google', 'Runoob', 'Facebook');

if(is_array($arr_site)){

    echo '变量 $arr_site 是一个数组';

} else {

    echo '变量 $arr_site 不是一个数组';

}

?>

php自带的类型判断如下

isset(): //变量是否已经声明
empty(): //变量是否为空
defined(): //常量是否已经定义 define()
array_key_exists(mixed key, array search): //检查给定的键名或索引是否存在于数组中
is_numeric ( mixed var ): //检测变量是 否为数字或数字字符串
is_bool(): // 检测变量是否是布尔型
is_float(): // 检测变量是否是浮点型 和is_double,is_real()都一样的用法
is_int(): // 检测变量是否是整数is_integer() 一样的 用法
is_string(): // 检测变量是否是字符串
is_object(): // 检测变量是否是一个对象
is_array(): // 检测变量是否是数组
is_null(): // 检测变量是否为 NULL 值是否是NULL大小写敏感

结合数组的例子,你只需要更换is_array()判断条件即可。

PHP empty、isset、isnull的区别

empty

如果 变量 是非空或非零的值,则 empty() 返回 FALSE。换句话说,”"、0、”0″、NULL、FALSE、array()、var $var、未定义;以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回 TRUE。

isset

如果 变量 存在(非NULL)则返回 TRUE,否则返回 FALSE(包括未定义)。变量值设置为:null,返回也是false;unset一个变量后,变量被取消了。注意,isset对于NULL值变量,特殊处理。

is_null

检测传入值【值,变量,表达式】是否是null,只有一个变量定义了,且它的值是null,它才返回TRUE . 其它都返回 FALSE 【未定义变量传入后会出错!】

参考文章

php默认分类

开发微信小程序的URL Scheme - 前后端实战项目

2022-9-11 11:56:54

php

如何处理并拿到需要的JSON数据 - PHP

2022-9-11 15:42:38

⚠️
Npcink上的部份代码及教程来源于互联网,仅供网友学习交流,若您喜欢本文可附上原文链接随意转载。
无意侵害您的权益,请发送邮件至 1355471563#qq.com 或点击右侧 私信:Muze 反馈,我们将尽快处理。
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索