2009-10-15 70 views
0

編輯:其他問題:使用任何類/命名空間ZendFramwork

  • 我必須在new NAMSPACE_CLASSNAME
  • 結束時,我可以訪問內部的任何Zend的包加名「.php」我控制器/模型,用於 例如:

/*控制器// //方法A *內部/

方法$客戶=新 一個Zend_Http_Client( 'http://example.org', 陣列( 'maxredirects'=> 0, '超時'=> 30));

那裏嗨,

因爲我已經問How to add 3rd party lib to the ZendFramework,我也想問問,我的圖書館是否可以在我的每一個controllersmodelsviews等 是否註冊一個命名空間和自動加載其類意味着,如果我註冊'MyClassXY_'使能使用'MyClassXY_someMethod'

我的問題的另一部分是關於在我的控制器中使用任何Zend內部類/組件/方法。 正如我從CakePHP知道的那樣,我可以做App::import('appIwantToLoad')或使用component在我的控制器/模型中提供任何CakePHP類/組件。 ZendFramework看起來有點不同: 我聽說過'工廠'例如使用放入工廠方法的參數數組實例化一個CacheObject的方法。

如果你還是不明白我的問題是有關的,我儘量給你一個簡單的例子是什麼:

我坐在控制器前,我要訪問的ACL或ZendFramework的緩存模塊。 我沒有設置任何特定的命名空間加載(只是'Default_'加載),我沒有設置任何特定的資源加載(除了FrontController和所有其他基本的MVC資源)。

現在我可以只使用($Namespace_Module_AdditionalStuff$ZendModuleXY = $Zend_Module_AdditionalStuff::constructionMethod來globaly訪問這個或那個類或方法嗎?

非常感謝。

回答

1

如果您爲MyClassXY庫設置自動加載,則可以使用該目錄下的任何類。 E.g:

//if there is library/MyClassXY/Foo.php with class MyClassXY_Foo 
new MyClassXY_Foo 
//is valid 

b)您可以將您的自舉資源Zend_Registry

Zend_Registry::set('dbConnection', $resource); 

class App_Another_Class 
{ 
    /* */ 
    $resource = Zend_Registry::get('dbConnection'); 
} 
+0

我必須添加.php還是可以離開它? – 2009-10-15 19:20:45

+0

@ daemonfire300:這是一個錯字,sry。 – erenon 2009-10-16 13:45:40