親クラスのコンストラクターで子クラス名を取得したい。クラスは名前空間になっているので、get_class(); を使用すると 関数を使用すると、名前空間全体が取得され、必要なのは子のクラス名だけです。
それが問題であれば、親クラスは抽象クラスです。
PHPget_called_class()
から関数を試す
名前空間を持つ完全修飾クラス名は、実際には「正しい」クラスです。最後のビットだけが必要な場合は、単純に部分文字列にする必要があります。
$class = substr(get_class($this), strrpos(get_class($this),'\\')+1);
または、リフレクションを使用できます
$refl = new \ReflectionObject($this);
$class = $refl->getShortName();