【发布时间】:2009-10-26 19:37:54
【问题描述】:
在我的团队目前正在进行的项目中,我们正在修改一个商业 PHP 应用程序。该应用程序到处都是代码,其中父类检查并使用父类中不存在的属性,如下所示:
class A
{
function doSomething()
{
if (property_exists($this, 'some_property'))
{
$this->some_property = $_REQUEST['val'];
}
}
}
class B extends A
{
protected $some_property;
function doSomething()
{
parent::doSomething();
}
}
我们觉得不得不修改这段代码有点肮脏;这是正确的设计吗?有哪些方法(除了显而易见的)可以避免这种情况?
【问题讨论】: