我使用PHP 5.2.6。我想为方法中的参数设置默认值,但看起来我太聪明了。我可以使用PHP中的类属性设置默认方法参数吗?
班级属性blnOverwrite
是默认的并且可以在课程的其他地方设置。我有一个方法,我想让它可以再次设置,但不能覆盖现有的值。当我尝试此操作时出现错误:
public function place($path, $overwrite = $this->blnOverwrite) { ... }
我必须这样做吗?
public function place($path, $overwrite = NULL) {
if (! is_null($overwrite)) {
$this->blnOverwrite = $overwrite;
}
...
}
是的,这是正确的方法 – Galen 2010-09-29 15:22:03