我们正在考虑使用无框架将我们的PHP web应用(这是杀害我们)使用Zend框架。 由于应用程序,我不认为大小的从头开始将是管理层,所以我要开始研究如何慢慢从当前网站结构使用Zend Framework转换为一个,但没有一个可行的选择很多在这个过程中的信息。
到目前为止,我的计划是当前代码库转储到Zend的应用程序的公共/目录下,解决这个问题我敢肯定,这会突然出现的众多问题,然后开始重写模块一次一个。
有没有人有经验,在过去这样做的,又是如何制定出适合你?
我们正在考虑使用无框架将我们的PHP web应用(这是杀害我们)使用Zend框架。 由于应用程序,我不认为大小的从头开始将是管理层,所以我要开始研究如何慢慢从当前网站结构使用Zend Framework转换为一个,但没有一个可行的选择很多在这个过程中的信息。
到目前为止,我的计划是当前代码库转储到Zend的应用程序的公共/目录下,解决这个问题我敢肯定,这会突然出现的众多问题,然后开始重写模块一次一个。
有没有人有经验,在过去这样做的,又是如何制定出适合你?
我现在已经做了几个。 什么工作最适合我的是把ZF“围绕”的旧的应用程序,因此所有的请求都通过ZF。 然后我有一个“旧”控制器插件,它检查该请求是否可以通过ZF满足,并且如果不是,把它发送到旧的应用程序:
class Yourapp_Plugin_Legacy extends Zend_Controller_Plugin_Abstract
{
public function preDispatch(Zend_Controller_Request_Abstract $request)
{
$dispatcher = Zend_Controller_Front::getInstance()->getDispatcher();
if (!$dispatcher->isDispatchable($request)) {
// send to the old code...
}
}
}
究竟如何,然后将请求发送到您的旧应用程序依赖于它是如何实现的一点。 在一个项目中,我检查的要求,决定从旧代码的要求会去,然后要求。它听起来像这可能是适合你的是什么文件。 在另一个项目中我的解决办法是将所有这些请求到LegacyController在ZF项目,跑老的代码来获取生成的HTML,然后从新建项目呈现它的Zend_Layout的内部。
这种方法的优点是可以逐步引入ZF模块,你重写旧的应用程序的部分,直到你到达那里请求的100%可以通过ZF提供服务的地步。 此外,由于运行旧的代码之前的ZF项目已经初始化,您的旧代码可以使用ZF自动加载,这样你就可以开始在旧代码写在一个更ZF-风格的车型更换类,并让他们使用两种该应用程序的部分。