Search code examples
phpclassformsobject

Create a PHP Class -> Create an object of it in another class


I have created a PHP class called formChecker.php. It validates a form. As a Java programmer, I would like to stick with the idea of creating an instance of this class in another class and run it from there. It doesn't seem to be working for me.The following is a demonstration:

class formChecker{

  ..... validation functions go here

}

class runFormChecker{

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

}

Can this be done? What I'm thinking of is developing a number of classes that can be run seperately.

GF


Solution

  • I'd rather pass the instance of formChecker (or something that implements a certain interface) to the instance of runFormChecker. see http://en.wikipedia.org/wiki/Dependency_injection

    Could be as simple as

    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);