将功能的内容复制到另一个

时间:2011-10-19 07:49:45

标签: php

我想插入以下代码:

if ($this->id == null) {
  return false;
}

在几个类的方法中。我可以使用include("mycode.php')这样做,但这很难看。

有没有办法调用函数(所以它会在更高的范围内返回false)?

3 个答案:

答案 0 :(得分:5)

这看起来像DRY的实例方式太远了。

只有三行 - 保存的代码量很少。

从维护的角度来看,这三行对于理解的功能至关重要。将这部分流量控制转移到包含中是一个糟糕的想法。

答案 1 :(得分:1)

您可以将这些类继承到另一个类,或重新设计整个类系统,使这个愚蠢的代码重复性较低,或者复制/粘贴它。我确信后一个选项会比扭动这个问题花费更少的时间。

答案 2 :(得分:0)

为什么不把它作为一个功能?

function isNull($object) {
  if ($object->id == null)
      return false;
}

然后写下

if (isNull($this))
  return false;

为您节省了一条线,这取决于您是否值得。