class CLASS_A{}
$classA = 'CLASS_A';
var_dump(class_exists($classA::class)); //not works
変数を使用してクラス名を取得する方法はありますか?PHPで動的変数のクラス名を取得するには?
class CLASS_A{}
$classA = 'CLASS_A';
var_dump(class_exists($classA::class)); //not works
変数を使用してクラス名を取得する方法はありますか?PHPで動的変数のクラス名を取得するには?
あなたはそのためにリフレクションを使用します。
class CLASS_A{}
$classA = 'CLASS_A';
$c = new \ReflectionClass($classA);
var_dump($c->getName());
参考文献:
素晴らしいですアイディア。それは名前空間で動作します。 –
をしたいすべてのクラス名である場合、あなたは、単に使用することができますget_class関数:http://php.net/manual/en/function.get-class.php
class test{}
$obj = new test;
echo get_class($obj); // Will echo test
あなたが名前空間、 `のvar_dump(でclass_exists($クラスA))気にしないのであれば詳細は、使用リフレクション(zerkmsの回答を参照してください)
OPには変数にクラス名があります。そして、任意のクラスについて、どのようにコンストラクタのパラメータを知っていますか?可能なコンストラクタの副作用はどうでしょうか? – zerkms
彼は変数にクラス名を持っていて、クラス名を望んでいますか?うーん... – theomessin
あなたの編集に関して、はい、それは一般的に問題になります。しかし、私は彼の質問から外挿して、彼はすでに彼のコードのどこかにオブジェクトを持ち、クラス名を取得したいと考えていました。 – theomessin
を取得する必要がある場合は、' :-) – Capsule