我有一个 php 对象,它有一个类似的key=>value
东西[ipAddress] = 'NULL'
如果我这样做:
if(isset($object->ipAddress)){
echo "I am set!!!";
}
它从不回声。因为显然它不是“设置”。我给他们的印象是它是设置的,因为他经常说 NULL。
有没有办法绕过这个说,你准备好了?没有实际给它一个价值?我问是因为我试图编写这样的函数:(不要介意调试,是调试导致我提出这个问题)
private function checkForColumnInModelObject($modelObject, $column, $custom_name){
$relationship = array();
foreach($modelObject as $model){
if(isset($model->$column)){
$value_returned = $model->$column;
var_dump($column);
var_dump($custom_name);
var_dump($value_returned);
//$relationship[$custom_name] = $value_returned;
}
}
//return $this->toObj($relationship);
}
所以我在这里要做的是检查模型对象中的列。现在你可能会得到一个列数组,我们在一个调用它的函数中遍历它,以及一个不同模型对象的数组。试图查看模型对象是否具有该列。
例如:
Does equipmentModel have ipAddress Column? yes? fetch me the value.
我们这样做的方法是说“是这个模型集上的列”。问题是,我们可能有具有 NULL 值的列......假设它们的集合,它们的值只是 null,但 PHPisset()
就像NO,you are not set一样。
关于如何编写此代码以保持相同逻辑的任何想法,但假设模型具有该特定列,则允许 null 值通过?