我目前正在测试一个简单的 PHP 函数。
如果在没有传递任何参数的情况下调用函数,我想返回字段的当前值;如果传递了参数,我想设置一个新值。 奇怪的是:如果我传递 0(var_dump 显示正确的值 int(1) 0),函数进入 if 分支,就像我调用没有任何值的函数一样,我只是不明白为什么。
功能:
public function u_strasse($u_strasse = 'asdjfklhqwef'){
if($u_strasse == 'asdjfklhqwef'){
return $this->u_strasse;
} else {
// set new value here
}
}
u_strasse()
或 u_strasse(0)
让我进入 if 分支。
最佳答案
您应该使用 null 作为默认值:
public function u_strasse($u_strasse = null)
{
if ($u_strasse === null) { $u_strasse = 'asdjfklhqwef'; }
// rest of function
}
关于php - 将 0 传递给具有默认值的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9569557/