I’m having some trouble extending Classes in PHP.
Have been Googling for a while.
$a = new A();
$a->one();
$a->two();
// something like this, or...
class A {
public $test1;
public function one() {
echo "this is A-one";
$this->two();
$parent->two();
$parent->B->two();
// ...how do i do something like this (prepare it for using in instance $a)?
}
}
class B extends A {
public $test2;
public function two($test) {
echo "this is B-two";
}
}
I’m ok at procedural PHP.
Your examples are fine, but you are showing a little confusion here:
what you want is this I think:
Then you want to make an object of type B and call function “one”
This will output
This is an example of polymorphic class behavior. The superclass will know to call the current instance’s version of the function “two”. This is a standard feature of PHP and most object oriented languages.
Note, that a superclass never knows about subclasses, the only reason you can call the “two” method and have B’s version run is because the function “two” was defined in the parent (A) class.