parent AND self PHP oops

 parent  AND self PHP oops

self::refers to the current class and it is usually used to access
static members, methods, and constants. parent::refers to the
 parent class and it is most often used when wanting to call the
 parent constructor or methods. It may also be used to access
members and constants. You should use parent::as
opposed to the parent’s class name because it makes it easier
 to change your class hierarchy because you are not hard-coding
 the parent’s class name.

The following example makes use of both parent::and self::for
 accessing the Childand Ancestorclasses:

class Ancestor {
const NAME = "Ancestor";
function __construct()
{
print "In " . self::NAME . " constructor\n";
}
}
class Child extends Ancestor {
const NAME = "Child";
function __construct()
{
parent::__construct();
print "In " . self::NAME . " constructor\n";
}
}
$obj = new Child();

The previous example outputs
In Ancestor constructor
In Child constructor
Make sure you use these two class names whenever possible.