相关疑难解决方法(0)

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

考虑到:

  • isset()函数构造返回TRUE,如果一个变量被设置,而不是NULL
  • 如果未设置变量,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');

?>
Run Code Online (Sandbox Code Playgroud)

php

7
推荐指数
1
解决办法
583
查看次数

标签 统计

php ×1