2011-06-29 12 views
1

オブジェクトのインスタンスを作成しようとしていますが、オブジェクトクラス名が手作業で設定されています。クラスファイル内変数に基づいてオブジェクトの新しいインスタンスを作成

define('DIRECTORY', 'RaptorDirectory'); 

:config.phpの中

$this->directory = new DIRECTORY; // <--- how do I use the constant there? 

ディレクトリが別のクラスに変更される可能性がありますので、私はこれをやっている(例えば、LDAPDirectory)

答えて

3

変数を使用することはできませんが、変数を使用できます(例:

$class = DIRECTORY; 
$this->directory = new $class; 
ありがとう。
+0

ありがとう。私は推測する変数に切り替えるだけです。これは文書化されていますか? – davidosomething

+0

@davidosomething http://www.php.net/manual/en/language.oop5.basic.php#example-157 – Phil

関連する問題