我创建了一个名为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);