Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

php how to get __DIR__ of child class

Tags:

oop

php

I have two classes in separate folders

class Parent
{
    public $path = null;

    function  __construct()
    {
        $this->path = __DIR__;
    }
}

and

class Child extends Parent
{

}

So when I create an instance of Child:

$child = new Child();
echo $child->path

I get a path to Parent. What I actually want is to get path to Child. I cannot modify Child class.

Is it possible?

like image 852
ehpc Avatar asked Oct 09 '10 07:10

ehpc


1 Answers

You can get use reflection to get what you're looking for:

$child = new Child();
$class_info = new ReflectionClass($child);
echo dirname($class_info->getFileName());
like image 200
bradym Avatar answered Sep 18 '22 17:09

bradym