我创建了一个名为formChecker.php的PHP类。它验证表单。作为一名 Java 程序员,我想坚持在另一个类中创建此类的实例并从那里运行它的想法。它似乎对我不起作用。以下是演示:

class formChecker{

  ..... validation functions go here

}

class runFormChecker{

....  create instance of formchecker here and use it's methods etc.

}

能做到吗?我在想的是开发一些可以单独运行的类。

GF

最佳答案

我宁愿将 formChecker 的实例(或实现某个接口(interface)的东西)传递给 runFormChecker 的实例。见http://en.wikipedia.org/wiki/Dependency_injection

可能很简单

interface FormChecker {
  public function foo($x);
}

class MyFormChecker implements FormChecker
  public function foo($x) {
    return true;
  }
}

class RunFormChecker {
  protected $formChecker=null;
  public function __construct(FormChecker $fc) {
    $this->formChecker = $fc;
  }

  // ....
}

$rfc = new RunFormChecker(new MyFormChecker);

10-06 06:59