改变PHP框架容易还是困难?

时间:2011-02-15 23:45:11

标签: php zend-framework codeigniter

我决定使用codeIgniter作为我的php框架,因为我对php相对缺乏经验(到目前为止只有大约6个月的学习时间),并且听说Zend是更高级的。

因此,如果我使用codeIgniter一年,然后决定切换到Zend(如果我决定),需要多长时间才能完成两个框架之间的转换?

5 个答案:

答案 0 :(得分:10)

Codeigniter是一个为自己的程序员构建的可用性框架,您在PHP中没有丰富的经验,并提供了一个简单的API来轻松快速地创建网站。

另一方面,Zend不是一个相同性质的框架,其中Code igniter专门构建为完全符合您的行为要求Zend更多的是一个组件框架,提供所有内容但是您必须自己建造。

据说与Zend合作,您必须了解MVC,OOP,Relation Mapping等概念才能有效地构建网站。

Zend不仅仅是Web的框架,它还是通过命令行创建应用程序的网关。 - 我知道CI 2.0支持CLI,但它不是为它构建的!

例如,我可以从我的系统中删除Apache Web服务器,并使用PHP和Zend通过CLI构建HTTP服务器,它将使用组件与我的服务器的其他部分进行交互,例如服务等,监控端口80并解析http标头并执行正确的操作,例如通过PHP CLI执行所请求的文件。

如果我能用lamen的话来说,我会说Codeignter是蛋糕已经得到支持并准备切片并与世界分享,Zend另一方面是桌上的成分,准备好混合。

你应该知道,第一次开始做一个特定的蛋糕永远不会是正确的,需要时间和精力,尝试新的东西,然后你可以得到你喜欢它。

从Codeigniter开始将是一个明智的选择,这将学习对象,推理,MVC,数据库摘要,库,目录结构的基础知识以及您将使用为您的站点创建和推进系统的更多内容。

如果你知道Codeigniter是一个完全不同的平台,那么迁移到Zend会有点棘手,就像从Windows跳到Apple一样,它们都执行相同的工作,但它从来都不一样。

所以它并不是说过渡是以时间为单位来衡量的,而是以更多的技能单位来衡量。

资源:

希望这有帮助。

答案 1 :(得分:3)

这完全取决于您作为开发人员的真实体验。但是我花了几个星期的时间才能很好地了解Zend Framework,并将其用于真实的网站。

答案 2 :(得分:2)

这取决于你将自己融入框架的程度。到了一年的时间,你会发现你没有办法你要切换一个框架(除非你有大量的业余时间 - 这是不可能的)。

不要期待切换。您的应用越复杂,切换所需的工作就越多。您可以进行切换,但棘手的部分将是您的ORM,更不用说触及项目的每个部分以确保工作正常。

我认为您在CodeIgniter或Zend Framework中有一个可靠的选择。感谢您使用框架期。擅长一个,也许在另一个项目上尝试另一个。

答案 3 :(得分:1)

这完全取决于你对php框架的了解程度。 您熟悉框架结构,功能,API等吗? 因此,如果您的计划是更改为ZendFramework,那么这一切都取决于您如何访问框架的文档(这里我假设您以前从未使用过ZendFramework),因为codeIgniter和ZendFramework具有不同的API调用。 更容易理解框架的文档(API,参考指南,教程等),然后您可以更快地进行这两者之间的转换。 恕我直言ZendFramework缺乏API的文档,并花了很长时间让我理解实现。 尝试将自己与另一个php框架文档进行比较。

答案 4 :(得分:1)

我和Zend一起工作已经超过一年了,这不是一个非常好的框架(如果你甚至可以称之为)。我感觉像是一个较重的Codeigniter版本,唯一的区别是Zend有Auth和ACL组件,以及真正强大的ORM组件。

话虽如此,与Zend相比,Codeigniter所缺乏的东西被令人敬畏且非复杂的文档所掩盖,这些文档解释了所有内容,比淹没你的Zend文档容易得多。

我不得不将我在Codeigniter中构建的一个小型CMS转换为Zend工作,幸运的是一位同事帮助了我(他在Zend上非常重要)并且考虑到控制器和Zend中的模型与他们不同,这有点混乱在Codeigniter。

如果我是你,我会从Codeigniter切换到Kohana,或者甚至是FuelPHP块上的新孩子,这有点像Codeigniter和Kohana之间的混合。 Zend比我认为的要复杂得多,并且更适合企业应用程序,说实话,它们并不是我遇到的很多基于Zend构建的企业应用程序。