php有哪些常用的框架?其利弊是什么
发布时间:2022-07-16 15:47:39 所属栏目:PHP教程 来源:互联网
导读:一、ThinkPHP ThinkPHP(FCS)是一个轻量级的中型框架,是从Java的Struts结构移植过来的中文PHP开发框架。它使用面向对象的开发结构和MVC模式,并且模拟实现了Struts的标签库,各方面都比较人性化,熟悉J2EE的开发人员相对比较容易上手,适合php框架初学者。 T
一、ThinkPHP ThinkPHP(FCS)是一个轻量级的中型框架,是从Java的Struts结构移植过来的中文PHP开发框架。它使用面向对象的开发结构和MVC模式,并且模拟实现了Struts的标签库,各方面都比较人性化,熟悉J2EE的开发人员相对比较容易上手,适合php框架初学者。 ThinkPHP的宗旨是简化开发、提高效率、易于扩展,其在对数据库的支持方面已经包括MySQL、MSSQL、Sqlite、PgSQL、 Oracle,以及PDO的支持。ThinkPHP有着丰富的文档和示例,框架的兼容性较强,但是其功能有限,因此更适合用于中小项目的开发。 优点 借助成熟的Java思想 易于上手,有丰富的中文文档;学习成本低,社区活跃度高 框架的兼容性较强,PHP4和PHP5完全兼容、完全支持UTF8等。 适合用于中小项目的开发 从thinkphp3.2.2引入composer包管理工具 缺点: 对Ajax的支持不是很好; 目录结构混乱,相比其他框架目录结构要差一点; 上手容易,但是深入学习较难。 二、Yii Yii 是一个基于组件的高性能php框架,用于开发大型Web应用。Yii采用严格的OOP编写,并有着完善的库引用以及全面的教程。从 MVC,DAO/ActiveRecord,widgets,caching,等级式RBAC,Web服务,到主题化,I18N和L10N,Yii提供了 今日Web 2.0应用开发所需要的几乎一切功能。事实上,Yii是最有效率的PHP框架之一。 优点: 纯OOP 用于大规模Web应用 模型使用方便 开发速度快,运行速度也快。性能优异且功能丰富 使用命令行工具。 支持composer包管理工具 缺点: 对Model层的指导和考虑较少 文档实例较少 英文太多 要求PHP技术精通,OOP编程要熟练! View并不是理想view,理想中的view可能只是html代码,不会涉及PHP代码。 三、laravel 优点: laravel的设计思想是很先进的,非常适合应用各种开发模式TDD, DDD 和BDD 支持composer包管理工具 集合了php 比较新的特性,以及各种各样的设计模式,Ioc 容器,依赖注入等。 缺点: 1.基于组件式的框架,所以比较臃肿 四、CodeIgniter 优点: Code Igniter推崇“简单就是美”这一原则。没有花哨的设计模式、没有华丽的对象结构,一切都是那么简单。几行代码就能开始运行,再加几 行代码就可以进行输出。可谓是“大道至简”的典范。 配置简单,全部的配置使用PHP脚本来配置,执行效率高; 具有基本的路由功能,能够进行一定程度的路由; 具有初步的Layout功能,能够制作一定程度的界面外观; 数据库层封装的不错,具有基本的MVC功能. 快速简洁,代码不多,执行性能高, 框架简单,容易上手,学习成本低,文档详细; 自带了很多简单好用的library,框架适合小型应用. 缺点: 本身的实现不太理想。 内部结构过于混乱,虽然简单易用,但缺乏扩展能力。 把Model层简单的理解为数据库操作. 框架略显简单,只能够满足小型应用,略微不太能够满足中型应用需要. 五、Zend Framework 优点: 大量应用了PHP5中面向对象的新特征:接口、异常、抽象类、SPL等等。这些东西的应用让Zend Framework具有高度的模块化和灵活性 严格遵循“针对接口编程”和“单一对象职责”等原则 官方出品,自带了非常多的library,框架本身使用了很多设计模式来编写,架构上很优雅,执行效率中等 缺点: MVC功能完成比较弱,View层简单实现(跟没实现一样),无法很强大的控制前端页面. 没有自动化脚本,创建一个应用,包括入口文件,全部必须自己手工构建,入门成本高 对于简单和小型的项目来说,反而因为在框架中应用了大量面向对象设计,对开发者提出了更高的要求,间接增加了项目的开发成本 (编辑:应用网_丽江站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |