PHP主流框架优缺点汇总
2019-09-30 06:46:11来源:编程学习网 阅读 ()
PHP主流框架包括:CodeIgniter、Lavarel、ThinkPHP、CakePHP、Yii、ZendFramework等,下面我们来了解一下这些框架的优缺点。
CodeIgniter
优点:
1.配置简单,全部的配置使用PHP脚本来配置,执行效率高;具有基本的路由功能,能够进行一定程度的路由;具有初步的Layout功能,能够制作一定程度的界面外观;数据库层封装的不错,具有基本的MVC功能。
2.快速简洁,代码不多,执行性能高,PHP框架简单,容易上手,学习成本低,文档详细;自带了很多简单好用的library,框架适合小型应用。
缺点:
1.把Model层简单的理解为数据库操作。
2.PHP框架略显简单,只能够满足小型应用,略微不太能够满足中型应用需要。
Lavarel
优点:
Laravel 的设计思想是很先进的,非常适合应用各种开发模式TDD, DDD 和BDD,作为一个框架,它准备好了一切,composer 是个php 的未来,没有composer,PHP 肯定要走向没落。
laravel 最大的特点和优秀之处就是集合了php 比较新的特性,以及各种各样的设计模式,Ioc 容器,依赖注入等。
缺点:
基于组件式的框架,所以比较臃肿。
ThinkPHP
优点:
1.易于上手,有丰富的中文文档;
2.框架的兼容性较强,PHP4和PHP5完全兼容、完全支持UTF8等;
3.适合用于中小项目的开发。
缺点:
1.对Ajax的支持不是很好;
2.目录结构混乱,需要花时间整理;
3.上手容易,但是深入学习较难。
CakePHP
优点:
1.CakePHP是最类似于RoR的PHP框架,包括设计方式,数据库操作的Active Record方式;设计层面很优雅,没有自带多余的 library,所有的功能都是纯粹的框架,执行效率还不错;数据库层的 hasOne, hasMany 功能很强大,对于复杂业务处理比较合适;路由功能,配置功能还不错;自动构建脚手架(scaffold)很强大;适合中型应用;基本实现过了MVC每一层;具有自动操作命令行脚本功能。
2.文档比较全,在国内推广的比较成功,大部分都知道CakePHP,学习成本中等。
缺点:
1.CakePHP非常严重的问题是把Model理解为数据库层操作,严重影响了除了数据库之外的操作能力。
2.CakePHP的cache功能略显薄弱,配置功能稍嫌弱;CakePHP不适合大型应用,只适合中型应用,小型应用来说略微的学习成本高了点。
Yii
优点:
1.纯OOP
2.用于大规模Web应用
3.模型使用方便
4.开发速度快,运行速度也快,性能优异且功能丰富
5.使用命令行工具。
缺点:
1.对Model层的指导和考虑较少
2.文档实例较少
3.英文太多
4.要求PHP技术精通,OOP编程要熟练!
5.View并不是理想view,理想中的view可能只是html代码,不会涉及PHP代码。
Zend Framework
优点:
1. 官方出品,自带了非常多的 library,框架本身使用了很多设计模式来编写,架构上很优雅,执行效率中等;MVC设计中,比较简洁,具有路由功能,配置文件比较强大(能够处理XML和php INI),各种 library 很强大,是所有PHP框架中各种功能最全面的,包括它不仅是一个PHP框架,更是一个大类库(取代PEAR),这是它的主要特色;能够直观的支持除数据库操作之外的Model层(比 CodeIgniter 和 CakePHP 强),并且能够很轻易的使用Loader功能加载其他新增加的Class;Cache功能很强大,从前端Cache到后端Cache都支持,后端Cache支持Memcache、APC、SQLite、文件等等方式;数据库操作功能很强大,支持各种驱动(适配器)。
2. 文档很全,在国内社区很成熟,并且目前不少Web 2.0网站在使用,学习成本中等。
缺点:
1. MVC功能完成比较弱,View层简单实现(跟没实现一样),无法很强大的控制前端页面;
2. 没有自动化脚本,创建一个应用,包括入口文件,全部必须自己手工构建,入门成本高;
3. Zend Framework 作为一个中型应用框架问题不大,也能够勉强作为大型应用的PHP框架,但是作为一个很成熟的大型PHP框架来说,还需要一些努力。
目前主流的框架有lavarel,yii,thinkphp。thinkPHP为国内的人开发的框架,是轻量级框架,开发文档是中文,学习比较容易。yii和laravel是外国人开发的框架,性能比较好,但是开发文档是英文的,学习不太方便,所以在PHP初学时期,以thinkPHP框架学习比较合适,当有一定水平后,再学习语法比较严谨和性能比较高的框架,如yii。当然,如果自己开发框架也是可以的。
原文链接:http://www.phpxs.com/post/6578/
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:php源码的安装方法和实例
- PHP访问MySQL查询超时怎么办 2020-03-09
- PHP简单实现单点登录功能示例 2019-10-09
- 关于php开启错误提示的总结 2019-10-09
- PHP进阶学习之垃圾回收机制详解 2019-10-09
- thinkphp5框架前后端分离项目实现分页功能的方法分析 2019-10-08
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash