要想写出的代码同时兼容5.1和6.0并不难,CMF已经在核心层做了很多兼容性的工作,最大问题是数据库和模型相关的用法要做一些兼容性处理,其实就是写代码时只用两个版本都能兼容的用法就可以了。
通过cmf_version()
函数获取CMF版本号,并增加相应版本下的处理逻辑
if (strpos(cmf_version(), '6.') === 0) { //这里写6.0的处理逻辑 } else { //这里写5.1的处理逻辑 }
建议统一使用模型去操作数据库
模型里都指定$name
属性,如UserModel
<?php namespace app\user\model; use think\Model; class UserModel extends Model{ /** * 模型名称,不带前缀的表名,每个模型都要指定这个属性 * @var string */ protected $name = 'user'; /*此处省略1000行...*/ }
更多兼容性问题,请查看文档https://www.kancloud.cn/thinkcmf/faq/2097612
也可以评论留言,大家一起研究兼容5.1和6.0应该注意哪些方面
0.话题发布后没及时显示,请联系官方QQ群管理;
1.话题支持代码,qq截屏直接粘贴,和QQ群一样;
2.问题描述清,比如服务器版本,程序版本;
3.能上代码,就不用文字;
4.把问题发到话题后再发QQ群;
5.如果感觉回复者解答的不错,可以发红包!
6.多帮助别人也是对自己的锻炼!
7.付费讨论中只有提问者和付费用户才可以查看回复
1.评论积分+1;每天最多10次奖励
2.发布话题积分+1;每天最多5次奖励
3.垃圾评论积分-500;
4.黄色,暴力,违反我国法律评论直接封号