ThinkPHP是为了简化企业级应用开发和敏捷WEB应用开发而诞生的。最早诞生于2006年初,2007年元旦正式更名为ThinkPHP,并且遵循Apache2开源协议发布。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进。下面我们为大家总结一下thinkphp的有缺点。
推荐教程:Thinkphp视频教程
优点
1.容易上手,配置、部署方便
2.编译缓存机制有利于性能提升
3.内置了对REST的支持
MVC和OO啥的就不说了...
缺点
1.麻烦的URL路由
正常模式:
URL -> URL路由 -> 将从URL解析得到的参数和请求传递给入口函数
TP的实现(以正则路由为例):
正则 -> 入口文件 + 动态参数
如:'/^blog\/(\d+)$/' => 'Blog/read?id=:1'
简洁的实现:
'/^blog\/(\d+)$/' => read // function read($id) {...}
此实现便于检查路由规则与入口函数的匹配性并使用户更加方便的使用解析后的URL参数,同时,TP的入口文件设计本就是多此一举。
2.糟糕的模型设计
*1 需要手动建立模型与数据库的关联
缺点:需要进行一系列不必要的配置,与定义模型后自动生成数据库表的行为相悖。
*2 对数据库的抽象远远不够
操作模型时有很强烈的操作数据库感觉,同时由于 2*1 需要手动建立模型与数据库的关联 这一缺点,毫无必要的字段映射让人恼火。
3.垃圾的模板引擎
*1 不支持模板继承
重复写代码很累的亲!
*2 XML格式的模板标签
书写不便,同时容易与HTML标签混淆(最近几年出现的模板引擎已经很少有用XML标签的了...)
*3 不适合前端书写
模板 + 数据 -> 渲染输出
模板由前端书写,数据由后台提供,显然TP的模板对此支持并不好。
*4 不支持模板的部分缓存
缺点:假设页面P由A, B两部分组成,A的更新频率大于B,则页面P的更新频率与A相同。
Atas ialah kandungan terperinci thinkphp5优缺点. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!