作为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