php - isset($foo) 在功能上是否与 !$foo 相同?

标签 php

isset($foo) 是否总是显示与 !$foo 相同的结果?

我有一段代码,我在使用时收到 php 警告:

if(!$foo){}

而且我很确定我应该使用:

if(!isset($foo)){}

这让我很好奇我是否要更改此处的功能。

最佳答案

没有。

使用 bool 否定运算符 ! 将变量转换为 bool 值。 bool 值 FALSE 等于 NULL(这在功能上与 isset() 相同)、空字符串、0、空数组。

如果变量不存在,使用 isset 不会给出错误。如果您对不存在的变量使用 !,则会显示 E_NOTICE

关于php - isset($foo) 在功能上是否与 !$foo 相同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17155047/

相关文章:

php - laravel 自定义类添加别名

php - 如果没有多重继承,在这个 PHP 类结构中使用什么设计模式是合适的?

javascript - 创建网络 map 应用程序。 Leaflet 还是 OpenLayers?

php - MySQL 使用 sum 获取表

php - 值为 NULL Codeigniter

php - 如何查找相同列表中的电子邮件?

php - 使用 MySQL 连接

php - 更新数据库中的记录

php - 与 PHP 的应用程序交互 - 记住用户

php - 如何从此示例中获取 css 的内容?