2012-11-08 67 views
4

我使用應用程序中使用PHP的命名空間,我認爲這不是我做什麼......我必須誤解PHP的「使用」關鍵字

\MyNamespace\ClassName::MyFunction(); 

我能做

use MyNamespace; 
ClassName::MyFunction(); 

如果我在頁面中多次使用該對象。這不適合我。我一直不得不使用第一種方法。

我錯過了關於use的關鍵字?

+0

'使用\ myNameSpace對象\類名作爲something' ....'東西:: MyFunction的()' – wesside

回答

4

use將基本上創建一個鏈接到它的論點,使用姓氏(除非另有說明)。要使用ClassName而不必指定其命名空間的時候,你必須輸入以下內容:

use \MyNamespace\ClassName; 

所以,ClassName被設置爲位於\MyNamespace\ClassName類型的引用。

它與Java的import的工作方式類似,不像C#的using,它導入整個名稱空間。

0

你需要導入/使用精確的類名:

use MyNamespace\ClassName; 

ClassName::myFunction(); 

您還可以使用以下語法:

use MyNamespace\MySubnamespace; 

MySubnamespace\MyClassname::doSth(); 
MySubnamespace\AnotherClassname::doSthElse(); 

,它允許您使用多個類從一個命名空間,而不需要導入它們中的每一個。

0

你應該嘗試這樣的:

use \MyNamespace\ClassName as MyClassName; 

MyClassName::MyFunction(); 
相關問題