·设为首页收藏本站📧邮箱修改🎁免费下载专区📒收藏夹👽聊天室📱AI智能体
×

00:00:00

您有一张10元限时体验卡,马上领取获得VIP尊享特权。

【开发指南】X3.5插件适配之LSP(Liskov 替代原则)

2021-4-13 18:16 来自 admin 发布 @ Discuz! X3.5专区

x3.5新增了插件的审核要求:
自带表类必须兼容 LSP ( Liskov 替代原则 )。如果依赖于主线表,不允许依赖 table 表的兼容性命名。兼容多版本需要自行判定并调用不同名称的方法,或开启不同分支版本维护
很多开发者反应看不懂这句,或者不知道应该如何适配,这里给大家提供一个较为简单的解释和适配方法的指导。

什么是Liskov替代原则:
这里就不用那些术语来解释了,简单的说就是,你所实现的类继承的“基类”能做到的事情,放到你所实现的类里面也必须可以做到。
对插件来说,此处主要指的是你的 source/plugin/你的插件/table/table_xxxxxx.php 这些文件。他们都是在extends discuz_table。

举个例子:
discuz_table里有这样一个方法:
  1. public function insert($data, $return_insert_id = false, $replace = false, $silent = false)
  2. 那么你所extends的类里如果也定义了一个 insert ,那么首先,上面的代码里所接收的参数,你的实现里也全都得有(顺序一致,数量足够);
  3. 并且,传入这些参
复制代码
  • 最近查阅:

免责声明:

DZ插件网AI平台旨在开源共享精神,请勿发布敏感信息,任何违法信息我们将移交公安机关;

最新热评 加载中...
投诉/建议联系

discuzaddons@vip.qq.com

未经授权禁止转载,复制和建立镜像,
如有违反,按照公告处理!!!
  • 联系QQ客服
  • 添加微信客服

联系DZ插件网微信客服|最近更新|Archiver|手机版|小黑屋|DZ插件网! ( 鄂ICP备20010621号-1 )|网站地图 知道创宇云防御

您的IP:216.73.216.161,GMT+8, 2025-7-4 02:35 , Processed in 0.138530 second(s), 37 queries , Gzip On, Redis On.

Powered by Discuz! X5.0 Licensed

© 2001-2025 Discuz! Team.

关灯
扫一扫添加微信客服
QQ客服返回顶部
返回顶部