<?php
class Injector {
public function test() {
$names = array();
// the instanceof is clearly superfluous here
if ($this instanceof Injector) {
$class = get_class($this);
do {
$names[] = $class;
$class = get_parent_class($class);
} while ($class !== 'Injector');
}
return $names;
}
}
class User extends Injector {}
class SpecialUser extends User {}
$t = new SpecialUser;
var_dump($t->test());