我有这样一段代码:
public function setValue($flag) {
$this->value = isset($flag) ? (bool) $flag : null;
}
我假设,$ flag可以表示null,false或true。 (我做类型转换的原因是我只关心类型。)
编辑: 这是我的目标:
这是我的代码所说的。我想知道,我提交的代码是实现目标的好方法,还是可能有更好(更简单,更优雅)的代码?
答案 0 :(得分:1)
修改强>
我刚读过您的编辑内容,如果您的代码正常工作,那么请按照您已经这样做的方式继续进行,因为这样方便又整洁。唯一的问题是我会先检查isset
。
$this->value = null;
if(isset($flag)) {
setValue($flag);
}
public function setValue($flag) {
$this->value = (bool) $flag
}
答案 1 :(得分:0)
如果值为isset
,false
将返回NULL
。您还应该is_null