我必须将应用程序从Zend Framework 1.12.0迁移到版本2.似乎有no migration guides yet。我已经研究过ZF2编码约定,并且我采用了依赖注入(Zend \ Di)和PHP 5.3命名空间。我的目标是将我的ZF1应用程序重构为ZF2模块。
问题:是否可以在每个步骤后至少部分工作的应用程序一步一步并且避免重大的重构步骤?如果是,那么步骤是什么?
这是我对这种逐步迁移的想法,但我不知道在每一步之后我是否最终得到了一个有效的应用程序:
但是,只有当某些ZF2组件与ZF1组件一起工作时,我才会在每个步骤后都有一个workin应用程序。我不知道是不是可以在ZF2控制器上使用ZF1视图(和查看助手)。
答案 0 :(得分:8)
曾经有人在某处写过它会很容易让人感到轻松,但是我从来没有在图书馆里看到任何看起来像是远程的链接或任何东西。
现在您可以找到的唯一内容和最新信息位于文档的“概述”页面中。就是这样:
注意ZF2与ZF1不向后兼容,因为框架实现了PHP 5.3+的新功能,并且由于许多组件的重大改写。
我从未预料到它会向后兼容,但我认为这里的关键声明是许多组件的主要重写。
几个月前我和ZF2开始了一个新项目,我只想要这个库;所以没有MVC哪个应该容易,对吧?到目前为止,这几乎是一场噩梦,因为没有什么是相同的。除了一些熟悉的类名或结构外,整个框架已经完全从头开始重写。
我喜欢的东西,经常使用的东西,如形式,缓存或会话都是完全不同的。对于我的项目,我花了很多时间没有任何好处。我认为ZF2的一个关键对象是对文档进行大修,这些文档的编写方式比前一个更差。
对于我现有的其他ZF1.x项目,除了完全重写应用程序之外,我没有看到如何管理升级。
答案 1 :(得分:8)
从Zend Framework 1迁移
本指南旨在提供从Zend Framework 1迁移到Zend Framework 2的工具和策略。没有一种解决方案适用于每个项目,也没有任何工具可以自动化该过程。
在本指南中,我们将介绍以下内容:
http://framework.zend.com/manual/2.1/en/migration/overview.html
答案 2 :(得分:2)
我有一个使用Zend Framework 1构建的应用程序 - 我是否可以将其迁移到新版本?
绝对。 Zend Framework 2的一个重要部分是迁移层,它将允许ZF 1代码在新的ZF 2引擎上运行,该引擎将在未来推出。有了它,您将能够以受控的速度添加新的ZF 2代码并重构现有代码。
但是,此时我还没有听说过任何实际的迁移层。我们只能希望会有,但在这一点上,我有疑虑。
答案 3 :(得分:1)
过去一年,我们一直在将Zend Framework 1的大型应用程序迁移到Zend Framework 2。我们从简单的事情开始,比如命名空间,然后慢慢地进入各种库组件。最后,我们最终编辑Zend_Layout
以使用Zend\Filter
,Zend_Form
与Zend\Filter
和Zend\Json
合作,Zend_Navigation
与{{}合作这帮助我们消除了几乎所有ZF1组件,但ZF1应用程序结构除外,它包括四个类Zend\Permissions\Acl
,Zend_Application
,Zend_Config
和{{1} }。最后一个难题是Zend_Controller
和Zend_Layout
的实现,其余部分是ZF2就绪。
最近,我们创建了一个代理,用于挂钩来自ZF1的Zend\Mvc\Application
和ZF2模块。这已经 非常 有帮助。我详细介绍了http://webjawns.com/2013/11/migrating-to-zf2-integrating-composer-and-doctrineormmodule/的步骤。
总结......
Zend\View
至Zend\Mvc\Application
,Model_
至Model\
等。)