php命名空間如何引入一個變量類名?


 

例子如下:
$className = 'Test';
正常
new \Require\allClass\Test();
當然OK,但是
new \Require\allClass\$className();
出錯,請問如何才能實現這種方式如
 
        
當我們new一個類名的時候,如果類型是字符串就以的字符串中的命名空間為准,如果new的是一個變量,無論變量內容前有沒有斜杠,PHP都會認為是根目錄命名空間

既然變量表示的是根目錄命名空間,根目錄命名空間前再加入目錄則會報錯

$className = ' \Require\allClass\Test';
new $className;

$className = ' Require\allClass\Test';
new $className;

以上是一個意思,雖然第二個開頭沒有斜杠,但是也會認為命名空間是根目錄的


 

$obj = 'lvFactory\\' . $name;
$obj = new $obj();

 

這樣就可以new了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM