0 レビュー
1 回答
php 5.5-PHPで文字列に保存された名前を使用してクラス名を取得することは可能ですか?
PHPの文字列にクラス名を保存しています。 文字列を使用してクラス名を解決することは可能ですか?
「Myclass」というクラスがあるとすると、次のようなものが必要になります。
'Myclass'::class
わからない
0
レビュー
答え :
解決策:
文字列に対して::class
をどのように使用するかは完全にはわかりません。単純な事実は、これが機能した場合、既存の文字列と同じ文字列を出力するだけであるということです。つまり、この例では、'MyClass' ::class
は文字列MyClass
を出力します。
クラス名だけを含む文字列を作成しようとしていて、名前空間を解決しようとしているのではないでしょうか。これは機能しません。ただし、 __NAMESPACE__
の予約語を使用して現在の名前空間を取得できます:
名前空間foo\bar;
エコー{-コード-4}; //'foo\bar'を出力します
これをクラス名文字列と組み合わせて使用すると、現在の名前空間の完全修飾クラス名を作成できます。
別の名前空間からクラス名を取得する場合は、事前に名前空間を知っている必要があります。名前空間がないと、PHPはクラスをまったく見つけることができません。
わからない
同様の質問
私たちのウェブサイトで同様の質問で答えを見つけてください。