加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 测试可能未设置的变量中的NULL值

发布时间:2020-12-13 17:51:45 所属栏目:PHP教程 来源:网络整理
导读:考虑到: 如果设置了变量而不是NULL,则isset()构造返回TRUE 如果未设置变量,is_null()函数将发出警告 有没有办法测试变量是否存在,无论它是否为NULL,而不使用@运算符来抑制通知? 编辑 连同你的第一个回复,我一直在考虑这个,我得出的结论是检查get_defined_v
考虑到:

>如果设置了变量而不是NULL,则isset()构造返回TRUE
>如果未设置变量,is_null()函数将发出警告

有没有办法测试变量是否存在,无论它是否为NULL,而不使用@运算符来抑制通知?

编辑

连同你的第一个回复,我一直在考虑这个,我得出的结论是检查get_defined_vars()是区分变量设置为NULL和未设置变量的唯一方法. PHP似乎没什么区别:

<?php

$exists_and_is_null = NULL;

// All these are TRUE

@var_dump(is_null($exists_and_is_null));
@var_dump(is_null($does_not_exist));

@var_dump($exists_and_is_null===NULL);
@var_dump($does_not_exist===NULL);

@var_dump(gettype($exists_and_is_null)=='NULL');
@var_dump(gettype($does_not_exist)=='NULL');

?>
$result = array_key_exists('varname',get_defined_vars());

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读