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