thinkphp的缺点
发布网友
发布时间:2022-04-22 02:02
我来回答
共3个回答
热心网友
时间:2022-04-07 07:43
ThinkPHP的优缺点如下:
1、高级模型:可以轻松支持序列化字段、文本字段、只读字段、延迟写入、乐观锁、数据分表等高级特性。
2、视图模型:轻松动态地创建数据库视图,多表查询相对简单。
3、关联模型:让你以出乎意料的简单、灵活的方式完成多表的关联操作。
4、模板引擎:系统内建了一款卓越的基于XML的编译型模板引擎,支持两种类型的模板标签,融合了Smarty和JSP标签库的思想,支持标签库扩展。通过驱动还可以支持Smarty、EaseTemplate、TemplateLite、Smart等第三方模板引擎。
5、缓存机制:系统支持包括文件方式、APC、Db、Memcache、Shmop、Eaccelerator和Xcache在内的多种动态数据缓存类型,以及可定制的静态缓存规则,并提供了快捷方法进行存取操作。
6、类库导入:ThinkPHP是首先采用基于类库包和命名空间的方式导入类库,让类库导入看起来更加简单清晰,而且还支持冲突检测和别名导入。为了方便项目的跨平台移植,系统还可以严格检查加载文件的大小写。
7、扩展机制:系统支持包括类库扩展、驱动扩展、应用扩展、模型扩展、控制器扩展、标签库扩展、模板引擎扩展、Widget扩展、行为扩展和模式扩展在内的强大灵活的扩展机制,让你不再受限于核心的不足和无所适从,随心DIY自己的框架和扩展应用。
8、URL模式:系统支持普通模式、PATHINFO模式、REWRITE模式和兼容模式的URL方式,支持不同的服务器和运行模式的部署,配合URL路由功能,让你随心所欲的构建需要的URL地址和进行SEO优化工作。
9、编译机制:独创的核心编译和项目的动态编译机制,有效减少OOP开发中文件加载的性能开销。ALLINONE模式更是让你体验飞一般的感觉。
10、ORM:简洁轻巧的ORM实现,配合简单的CURD以及AR模式,让开发效率无处不在。
11、查询语言:内建丰富的查询机制,包括组合查询、复合查询、区间查询、统计查询、定位查询、动态查询和原生查询,让你的数据查询简洁高效。
12、动态模型:无需创建任何对应的模型类,轻松完成CURD操作,支持多种模型之间的动态切换,让你领略数据操作的无比畅快和最佳体验。
13、分组模块:不用担心大项目的分工协调和部署问题,分组模块帮你解决跨项目的难题。
14、AJAX支持:内置AJAX数据返回方法,支持JSON、XML和EVAL格式返回客户端,并且系统不绑定任何AJAX类库,可随意使用自己熟悉的AJAX类库进行操作。
15、多语言支持:系统支持语言包功能,项目和模块都可以有单独的语言包,并且可以自动检测浏览器语言自动载入对应的语言包。
16、模式扩展:除了标准模式外,系统内置了Lite、Thin和Cli模式,针对不同级别的应用开发提供最佳核心框架,还可以自定义模式扩展。
17、自动验证和完成:自动完成表单数据的验证和过滤,生成安全的数据对象。
18、字段类型检测:字段类型强制转换,确保数据写入和查询更安全。
19、数据库特性:系统支持多数据库连接和动态切换机制,支持分布式数据库。犹如企业开发的一把利刃,跨数据库应用和分布式支持从此无忧。
热心网友
时间:2022-04-07 09:01
优点
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相同。
先说这么多...
热心网友
时间:2022-04-07 10:36
我觉得吧curd操作 的时候 使用内置函数 很难进行sql 调优. 使用query方法 删除数据时 会报释放错误
thinkphp的缺点
ThinkPHP的优缺点如下:1、高级模型:可以轻松支持序列化字段、文本字段、只读字段、延迟写入、乐观锁、数据分表等高级特性。2、视图模型:轻松动态地创建数据库视图,多表查询相对简单。3、关联模型:让你以出乎意料的简单、灵活的方式完成多表的关联操作。4、模板引擎:系统内建了一款卓越的基于XML的编译...
相对于别的php框架来说thinkphp有什么缺点
2、ThinkPHP国人开发维护,优点是中文文档完善,社区活跃;缺点是高频单字母函数让人不知所云,代码并不优雅。适合于国人快速开发一些Web系统。个人感觉缺少ORM。3、phalcon是C写的PHP框架,以PHP扩展形式加载,优势是性能绝对的第一,是其他框架的十倍,但缺点是学习成本高,一旦发现框架bug对于不懂C和PH...
PHP中常用的七大框架的优点与缺点
Laravel,则凭借其先进的设计和多种工作模式,赢得了开发者们的喜爱,然而,组件式的扩展可能导致项目规模的膨胀,对于追求简洁高效的人来说,这可能是个挑战。ThinkPHP,作为入门级的选择,它兼容多种数据库,文档丰富,但对于高级特性如Ajax支持和结构设计,它可能并非最佳选择。接下来是 Zend Framework,...
用ThinkPHP 这样的框架开发门户网站,有什么缺点
有人说thinkphp性能不怎么好,其实性能最大的限制还是php语言本身【解析型脚本语言就这样】。当然,到后面,程序的瓶颈就不在脚本语言了,经常出现在数据库上,所以,做好数据库优化,增加索引、分表、分库以及使用存储过程和触发器,可以把性能显著提升。。我现在使用thinkphp就开发了一套程序,数据库数据...
用ThinkPHP 这样的框架开发门户网站,有什么缺点
php的速度瓶颈绝对不是在执行上面,不然他也不会成为一种不用编译,而是每访问一次编译一次的语言,php优点就是执行特别快,这个和框架无关,我觉得php的速度瓶颈在数据库,如何更加高效的存储和读取,以及分类数据,是更重要的。所以数据库的设计要好好研究一下,当然,还有上面说的,各种缓存技术,无论...
thinkphp3.2文件缓存有什么缺点
文件缓存慢啊,现在电脑最大的瓶颈就是硬盘了。而且一个目录里的文件数量多了,会变得更慢。缓存一般都是用memecache或者redis之内的专门的缓存软件。它们存数据是存在内存里的,比存在硬盘的文件缓存读取速度快很多。
app开发用哪个php框架
缺点:模版比较固定,导致思想容易固化。2、Yii框架Yii Framework是一个基于组件、用于大规模web应用开发的高性能PHP开源框架,是目前最具效率的PHP框架之一。适合大型重量型web应用开发。优势:1、纯OOP开发,模型使用方便2、支持命令行工具开发,可以快速的创建一个web应用程序的代码3、具有高度的可重用性...
thinkphp框架的优缺点?对于开发来说最好用什么框架
你好,其实现在主流的PHP框架都各有优势,而且都可以完成php开发者的基本要求。但是其实在使用率上,每个区域都是不一样的。 在中国,thinkphp的使用率肯定是最高的,而在外国各个框架的使用率也不一样。除了框架的使用体验有关系外,其实也和可查询的资料有关系,作为国产框架thinkphp的资料自然是最多...
thinkphp与yii 哪个更优秀,分别是哪些方面优秀
1、简化开发方面:从新手的视角来看(或者表面来看),thinkphp做项目更简单,因为其一提供了大部分web开发常用类库,其二中文手册写的很详细。但事实上,thinkphp有两个缺失的特性导致一旦项目做久或者稍微上规模,就会使人头痛不堪,这缺失的两个特性分别是:完整的AR支持以及完善的多层次模型 其次,web...
php中,什么是单一模式?优缺点
好处不用多说了,非常便于共享代码和数据。缺点就是如果几个人同时改,容易发生冲突。不过借助版本控制软件和差异比较合并工具,冲突还是很容易解决的。单一入口应用程序对应多入口有哪些优势呢?单 一入口应用程序的所有http请求都是通过index.php接收并转发到功能代码中去的,所以在index.php里面就能完成许多...