千家信息网

ci框架和thinkphp有哪些区别

发表于:2025-02-14 作者:千家信息网编辑
千家信息网最后更新 2025年02月14日,这篇文章给大家分享的是有关ci框架和thinkphp有哪些区别的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。区别:1、CI没有强制绑定模板对数据库的操作,而ThinkPHP
千家信息网最后更新 2025年02月14日ci框架和thinkphp有哪些区别

这篇文章给大家分享的是有关ci框架和thinkphp有哪些区别的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

区别:1、CI没有强制绑定模板对数据库的操作,而ThinkPHP有;2、ThinkPHP讲究使用的便利性,提供了很多函数助手,而CI的使用比较麻烦冗长;3、CI的视图文件不可配置,而TP的视图文件可配置。4、TP提供多种调试方法,CI没有。

本教程操作环境:Windows7系统、thinkphp v5.1版、Dell G3电脑。

ThinkPHP与CI的功能做下对比:

  • 模型(Model):模板相当于对数据的操作,数据存放的形式有多种:如数据库、文件系统、内存等。CI没有强制绑定模板对数据库的操作,而ThinkPHP(以下称TP)默认跟数据库操作强相关,确实实际中操作的数据一般都是数据库的,但要操作其他存储类型的数据要怎么办呢?其实TP只是提供了操作数据的许多便利接口,只要不使用这些接口,还是不耦合的;而且存储类型的驱动是可配置的,比如可改为文件数据操作。所以TP要方便的多。

  • 命名空间的使用。CI党体会不到命名空间带来的便利与优雅。CI使用$this->load()导入不同模块的两个model时应该是冲突的,应该是可以覆盖,但使用起来就不方便了。

  • TP很讲究使用的便利性,所以提供了很多函数助手,一般正常使用是$a=Class::function();,使用助手之后一般是$a = class();,便利了不少,这个使用上看习惯吧。CI就要麻烦冗长地写成$this->class->function()。

  • 说说视图(view)与模板(template)。CI的视图文件的存放位置是application/view下面,而且不可配置,至少我没找到可以配置的地方。TP的view目录可配置,而且不一定要在application下,对安全访问和视图定制与替换提供比较大的便利性。
    对于模板,CI实现得比较鸡肋,虽说有个模板解析类 $this->load->library('parser'); 可以通过左边这代码加载,但是只能实现变量的简单替换,较复杂的控制结构就实现不了了,到头来还是用原生的php代码实现(我估计官方也提倡用原生,毕竟原生不用多解析一般,效率上占优,语法也不用再学一套)。
    而TP的模板就比较全面和成熟,有自己的一套语法,基本上是不用夹杂原生php,也许对于前端工程师来说是个好事吧,不用学php,就学个模板语法。前后端分工也就更加明确了。

  • 现在一想,CI和TP的MVC目录结构有着比较大的区别:

    CI的controllers、view、model就各分别一个目录,模块的划分是以上面各目录下新建子目录作为模块目录,或者干脆没有模块的概念,直接在目录下创建控制器和模型等。

    而TP是以模块作为基本的隔离单元,默认各个模板所对应的目录下都有一个controllers、view、model目录。

  • 至于调试(debug),TP绝对是甩CI几条街,官方提供的方法就有:

而CI只有简单的将错误的调用暂打印出来,虽说这已经可以解决60%以上的问题了。

感谢各位的阅读!关于"ci框架和thinkphp有哪些区别"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

数据 模板 目录 配置 数据库 文件 模块 视图 不用 便利性 助手 语法 框架 冗长 代码 内容 函数 多种 官方 接口 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 吉林运营网络技术服务哪家好 农行软件开发中心西安部地址 雄飙网络技术有限公司 文摘类数据库有哪些 dayz服务器参数翻译 宁夏卫星同步数显钟服务器 数据库涉及三范式 幼儿园怎么给幼儿宣传网络安全 大学生网络安全教育计划 河北文档软件开发销售价格 网络安全怎么抵御未来 河北唐山软件开发 皇室战争私人服务器下载地址 主备数据库是否需要浮动ip 农行软件开发中心王增光 软件开发是属于什么专业 戴尔t110怎么装服务器系统 宝塔项目放到服务器如何访问 lol显示服务器网速良好 围观世界互联网大会科技成果 针对服务器管理制度 网络安全应急准备工作 重庆彭水生鲜类的软件开发 吕梁软件开发贵吗 服务器计算原理 linux服务器日志监控 可采取的软件开发方法 扫黄打非网络安全活动 左江网络安全行业排在什么位置 室内设计系统软件开发核心技术
0