一、ThinkPHP
ThinkPHP(FCS)是一个轻量级的中型框架,是从Java的Struts结构移植过来的中文PHP开发框架。它使用面向对象的开发结构和MVC模式,并且模拟实现了Struts的标签库,各方面都比较人性化,熟悉J2EE的开发人员相对比较容易上手,适合php框架初学者。 ThinkPHP的宗旨是简化开发、提高效率、易于扩展,其在对数据库的支持方面已经包括MySQL、MSSQL、Sqlite、PgSQL、 Oracle,以及PDO的支持。ThinkPHP有着丰富的文档和示例,框架的兼容性较强,但是其功能有限,因此更适合用于中小项目的开发。
优点
1.借助成熟的Java思想
2.易于上手,有丰富的中文文档;学习成本低,社区活跃度高
3.框架的兼容性较强,PHP4和PHP5完全兼容、完全支持UTF8等。
4.适合用于中小项目的开发
5.从thinkphp3.2.2引入composer包管理工具
缺点
1.对Ajax的支持不是很好;
2.目录结构混乱,相比其他框架目录结构要差一点;
3.上手容易,但是深入学习较难。
二、Yii
Yii 是一个基于组件的高性能php框架,用于开发大型Web应用。Yii采用严格的OOP编写,并有着完善的库引用以及全面的教程。从 MVC,DAO/ActiveRecord,widgets,caching,等级式RBAC,Web服务,到主题化,I18N和L10N,Yii提供了 今日Web 2.0应用开发所需要的几乎一切功能。事实上,Yii是最有效率的PHP框架之一。
优点
1.纯OOP
2.用于大规模Web应用
3.模型使用方便
4.开发速度快,运行速度也快。性能优异且功能丰富
5.使用命令行工具。
6.支持composer包管理工具
缺点:
1.对Model层的指导和考虑较少
2.文档实例较少
3.英文太多
4.要求PHP技术精通,OOP编程要熟练!
5.View并不是理想view,理想中的view可能只是html代码,不会涉及PHP代码。
三、laravel
优点
1.laravel的设计思想是很先进的,非常适合应用各种开发模式TDD, DDD 和BDD
2.支持composer包管理工具
3.集合了php 比较新的特性,以及各种各样的设计模式,Ioc 容器,依赖注入等。
缺点
1.基于组件式的框架,所以比较臃肿