在开发过程中,我主要使用过了这么几种框架。thinkPHP框架、CI框架,laravel框架和yii框架。我接触到的第一个框架是TP框架,我简单的说下我对这几个框架的看法:
ThinkPHP框架
优点:
TP借鉴了Java思想,基于PHP5,充分利用了PHP5的特性,部署简单只需一个入口文件,一切搞定,简单高效,中文文档齐全,入门超级简单。自带模板引擎,具有独特的数据验证和自动填充功能,框架更新速度比较迅速。
缺点:
一个Model中可以操作多个表,但TP只能一个。
TP默认初始化了很多配置,使用起来很方便,但自然也会影响效率。但是把一些加载配置的时间拿去研究算法,这些小影响近乎可以忽略了。
CodeIgniter框架
优点:
配置简单,上手很快,全部的配置使用PHP脚本来配置,没有使用很多太复杂的设计模式,执行性能和代码可读性上都不错,执行效率比较高,具有基本的MVC功能. 快速简洁,代码量少,框架简单,容易上手,自带了很多简单好用的library,框架适合中小型项目,大型项目也不是不可以,只是扩展能力稍差。
缺点:
1. 把Model层简单的理解为数据库操作
2. PHP框架略显简单,只能够满足小型应用,略微不太能够满足中型应用需要
laravel框架(目前最新的是5.3,要求PHP版本较高5.6)
优点:
1.Laravel注重代码的模块化和可扩展性。
2.artisan: 命令行工具,很多手动的工作都自动了
3.可继承的模版,简化view的开发和管理
Laravel一直是PHP开发者最受欢迎的PHP框架。这是一个年轻的框架,但是拥有优雅的语法,可简单快速开发你的应用。它拥有大多数常见的功能,如:路由,身份验证,会话,队列和缓存。
缺点:
laravel的中英文文档比较少 demo也比较少 有时候一个功能要试好久 甚至要看源码
YII框架(目前是2.0版本)
优点:
1、快速,敏捷,不拖沓,给程序员飞翔的能力;
2、有gii功能!(创建控制器,model层,crud等操作);
3、具有高度的可重用性和可扩展性,是纯粹的面向对象的。开发速度快,完备的文档,可重用性可高扩展,是最高效的开发框架之一。
缺点:
1、对Model层的指导和考虑较少
2、文档实例较少
3、英文太多
4、要求PHP技术精通,OOP编程要熟练!
5、要求会bootstrap