[英]How to add new class and autoload in zend framework
我是Zend框架的新手,並且是第一次使用它。 我正在尋找可以在很短的時間內閱讀的簡單基礎教程。 我還想在Zend庫中添加新類。 當我制作任何新控制器時,它也應該自動加載。
如果有的話請發表您的意見。
問候,
一開始對我有幫助
http://devzone.zend.com/search/results?q=autoload (僅搜索)
在自動加載課程時,這是我的方法:
將文件夾“ My”創建到library /中,在其中創建文件夾“ Utils”和Utils文件“ Utils.php”中,因此路徑為library / My / Utils / Utils.php
對於此路徑,您必須調用class:class My_Utils_Utils {...}
並在configs / application.ini中
appnamespace =“應用程序”
autoloaderNamespaces.my =“我的_”
然后可以使用命名空間My_和類My_Utils_Utils
在控制器中:$ test = new My_Utils_Utils();
我在尋找簡單的基礎教程
這是我在谷歌搜索時發現的一些教程:
我還想在Zend庫中添加新類
您不應將新類本身添加到庫中,而應創建自己的庫或在“模型”-文件夾/文件夾中添加類(如果使用模塊化項目布局)。 通過使用Zend_Loader_Autoloader
及其子類來實現自動加載。 只要您遵循PEAR約定,即,如果您擁有類MyLib_Database_Table
,則它應位於文件夾MyLib/Database
,文件名應為Table.php
。 (還要確保MyLib的父文件夾在項目包含路徑上。
要自動加載,只需使用new MyLib_Database_Table
,自動加載器就會在必要時在后台加載類。 從1.10開始(我認為),自動加載器還完全支持PHP 5.3名稱空間。 即:
// Filepath: lib\\MyLib\\Database\\Table.php namespace MyLib\\Database; class Table { }
將使用相同的文件夾結構。 代碼示例:
use MyLib\\Database\\Table; class IndexController extends Zend_Controller_Action { public function indexAction () { $myTable = new Table(); } }
制作任何新控制器時自動加載
我不太確定你在這里的意思。 ZF默認情況下沒有任何依賴項注入設置。 但是,如果這就是您的意思,則可以實例化您的類而無需先要求它們。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.