作爲ZF小白我自己,我想我明白了一些OP什麼正試圖弄清楚。所以,我只解釋一些我理解的內容,希望它對OP有幫助(或者對未來的讀者更有可能,因爲原來的問題太老了,我想象OP現在是ZF大師)。
我明白,ZF聲稱在很大程度上是「隨意使用」,這樣就不需要買成一個完整的結構,像Zend_Application的Zend_Bootstrap類,整個MVC方法等
此外,我理解類命名和文件位置的約定,可以輕鬆自動加載。例如:class App_Model_User
所在的文件夾App/Model/User.php
我認爲可能是潛在的困惑是,在劇本方面,你有沒有
- 完成的.htaccess魔力,推動所有請求
public/index.php
- 設置
public/index.php
- 創建了
Application
或Bootstrap
對象綁定到一個配置文件的APPLICATION_PATH
,包括路徑
它可能有點不清楚如何最好地利用我們在這種情況下獲得的大部分ZF善良,並希望在另一個環境中使用。
我想我的答案,原來的問題將是的
http請求通常切入點序列 - >的.htaccess - > index.php文件 - >配置
設置了很多我們的環境,爲我們,我們需要重複一些不同的入口路徑。
因此,對於您的腳本,我的第一本能是創建一個通用的包含文件,它反映了index.php中發生的大部分事件 - 設置包含路徑,APPLICATION_PATH,實例化並調用引導程序,然後執行腳本特定的處理。
更好的是,可能需要爲所有腳本創建一個入口點,就像我們在http/web上下文中一樣。爲了您自己的腳本目的擴展Zend_Application,以便$application->run();
不再啓動MVC路由器 - 控制器 - 分派處理,而是執行您自己的操作。這樣,這個單獨的腳本入口點看起來幾乎與web入口點相同,唯一的區別是應用程序對象被實例化。然後將所需Application類的名稱作爲命令行參數傳遞給腳本。
但在這裏,我承認自己不那麼自信,只是拋出想法。
希望這一切都有助於某人。它實際上幫助我把它寫下來。謝謝,歡呼!
更新2009-09-29:Using Zend Framework from the Command Line
更新2009-11-20:而另一篇文章:Cron jobs in Zend Framework | GS Design
更新2010-02-25跨越這篇文章剛跑:Easy command line scripts with Zend Application - David Caunt
-1用於顯示使用裝載程序的棄用方式。 – markus 2009-09-28 06:17:48