Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
null并不意味着它';还没定,是吗PHP对象_Php_Mysql_Sql_Isset - Fatal编程技术网

null并不意味着它';还没定,是吗PHP对象

null并不意味着它';还没定,是吗PHP对象,php,mysql,sql,isset,Php,Mysql,Sql,Isset,我有一个php对象,它有一个键=>值,类似于[ipAddress]='NULL' 如果我这样做了: if(isset($object->ipAddress)){ echo "I am set!!!"; } 它从不回响。因为它显然不是“集合”,我给他们的印象是它是集合的,因为经常有空这个词 有没有一种方法可以绕开它说,你准备好了吗?没有给它一个值?我问这个问题是因为我试图写一个这样的函数:(不介意调试,正是调试让我想到了这个问题) 所以我在这里要做的是检查模型对象中的列。现在,您

我有一个php对象,它有一个
键=>值
,类似于
[ipAddress]='NULL'

如果我这样做了:

if(isset($object->ipAddress)){
     echo "I am set!!!";
}
它从不回响。因为它显然不是“集合”,我给他们的印象是它是集合的,因为经常有空这个词

有没有一种方法可以绕开它说,你准备好了吗?没有给它一个值?我问这个问题是因为我试图写一个这样的函数:(不介意调试,正是调试让我想到了这个问题)

所以我在这里要做的是检查模型对象中的列。现在,您可能会得到一个列数组,我们将在调用此列的函数中遍历该列,以及一个不同模型对象的数组。我们正在尝试查看模型对象是否具有该列

例如:

 Does equipmentModel have ipAddress Column? yes? fetch me the value.
我们这样做的方式是说“是这个模型集上的列”。问题是,我们可能有空值的列。。。假设它们的集合,它们的值只是null,但是PHP的
isset()
都像NO,您没有被设置


关于我如何编写它以保持相同的逻辑,但允许null值通过假设模型具有特定列的想法吗?

isset
每当您对某个变量进行赋值时,都返回true。当您执行
时,$somevar=NULL
(在本例中,它是一个赋值),
如果(isset($somevar){echo“Inside”;}
,“Inside”将永远不会打印。因为
NULL
永远不会被视为一个值。

如果您想知道对象属性是否存在,而不管它的值如何,您可以使用
property\u exists

if (property_exists($model, $column) {
    ...
}

字符串
'NULL'
与空对象
NULL
不同。
if (property_exists($model, $column) {
    ...
}