Ben gibi __FILE__
... Belki bir şey için get_called_class()
eşdeğer arıyorum get_included_file()
?
Ben bu gibi bir şey içeri var ne dizin bilmek istiyorum sınıfları bir dizi var:
<?php
class A {
protected $baseDir;
public function __construct() {
$this->baseDir = dirname(__FILE__);
}
public function getBaseDir() {
return $this->baseDir;
}
}
?>
Ve diğer bazı dosyasında, diğer bazı klasörde ...
<?php
class B extends A {
// ...
}
class C extends B {
// ...
}
$a = new A;
echo $a->getBaseDir();
$b = new B;
echo $b->getBaseDir();
$c = new C;
echo $c->getBaseDir();
// Annnd... all three return the same base directory.
?>
Şimdi, $this->baseDir = dirname(__FILE__)
her uzanan sınıfına ekleme gibi, bir şey getto yapabilirdi, ama bu biraz ... getto gibi görünüyor. Sonuçta, biz hemen, PHP 5.3 bahsediyoruz? Bu gelecekte olması gerekiyordu değil mi?
Bir sınıf ilan edildi dosyanın yolunu almak için başka bir yolu var mı?