什么是PHP框架,什么是好框架?

时间:2008-11-19 07:29:54

标签: php frameworks

我正在运行一个关于PHP Frameworks的网站,但我找不到它的确切定义,而且我一直在思考一个问题,如何找到一个好的PHP框架?特征?手册?效率?还是什么?

6 个答案:

答案 0 :(得分:27)

询问一个编程论坛什么是一个好的框架就像问一个汽车论坛什么是好车。意见差异很大,在95%的情况下,只要它积极发展,你选择的并不重要。您的大部分回复都是基于宗教而非主观比较。 :)

答案 1 :(得分:15)

基本上,框架是您可以选择构建程序的结构。它可以允许您连接到许多不同的API,以及确定您自己的应用程序的结构。我使用Zend Framework。这不是最容易学习的东西,但肯定有一个伟大的应用程序所需的一切。我建议你浏览一下网站上的快速入门指南来了解这个问题。它使用模型 - 视图 - 控制器,这在我看来是必不可少的。一旦配置好,它就会变得非常容易!

其他框架包括CodeIgniter和Symfony。有些人喜欢CodeIgniter,因为它的占地面积较小。这都是一个偏好问题。无论您选择哪个,请务必使用网站上的文档,因为了解如何最好地使用它是必不可少的。另外,为了更好地理解事物的运作方式,不要害怕每隔一段时间就在代码中达到峰值。

答案 2 :(得分:10)

框架提供脚手架,可以让您更快/更干净地发展。它们通常为UI组件和底层数据库访问提供工具集。

对于(非常)小型项目,框架可能过度,但通常,为您提供大量可重用代码会很有帮助。

PHP的一些值得注意的框架: Zend Framework CodeIgniter Symfony CakePHP Mojavi

A comparison chart. A more detailed review site.

答案 3 :(得分:7)

我眼中的PHP框架是一组帮助您开发Web应用程序的类。

在我的公司,我们使用Zend Framework。我不得不说,开始使用此框架非常困难,但如果您了解如何使用API​​和参考指南,那么您就拥有了一个很棒的框架。还有它的兴趣,因为他们有Zend人坐在项目上,所以他们可以使用这些内部技巧,并获得一些其他人无法获得的性能提升。

ZF与其他人的不同之处在于能够毫无困难地创建MVC程序。

答案 4 :(得分:3)

框架有很多东西要说 - 这里有好帖子。但请注意,它们并不总是最佳解决方案。您可能希望避免它们的原因是

  1. 由于代码库的大小,它们往往很慢(我看到Zend引用的简单PHP嵌入式页面交付速度慢了10倍 - 不可否认的是其中一个较大的)。

    < / LI>
  2. 他们可能在他们打算使用的“域名”之外不灵活。扩展框架以执行非标准的操作比从头开始编写要困难得多。

  3. 需要牺牲一些模块化。使用更简单的模板/控制文件系统(例如TinyButStrong)的优点是每个页面都是一个独特的单元,这自然会使您的系统更容易进行单元测试和稳健。

  4. 他们往往容易受到版本控制问题的影响。开发你的第一个网站是非常好的,但是在你开发了十几个网站后,你很可能会发现你一直在使用这个框架的三个或四个版本,并且你有一些混合的代码库。使用 - 并同步所有内容需要时间,你可能不会。

  5. 以上都不是反对使用框架的结论性论据,在许多(大多数?)案例中,优势得分会更高,但如果没有首先考虑您的要求是什么以及什么是最佳解决方案,则不应该达到一个优势。对于每个特定问题。

答案 5 :(得分:2)

PHP框架是一个库,通过隐藏一些复杂的HTTP协议或添加一些有用的功能,使网站开发人员的生活更轻松。 例如,CakePHP实现了所谓的MVC,这使开发人员认为比HTTP更高的级别。这是我到目前为止所学到的。