当前位置:首页 > 后端 > 正文内容

thinkphp6批量软删除

Z先生3年前 (2022-12-29)后端920

关于thinkphp软删除的理解

软删除核心逻辑

  • 数据库设置软删除字段,并将类型定义为int(10)

  • 软删除核心代码

    // 自动时间戳类型未int
    protected $autoWriteTimestamp = 'int';
    // 软删除,需要引入use think\model\concern\SoftDelete;
    use SoftDelete;
    // 软删除字段
    protected $deleteTime = 'isdel';
    // 软删除默认值
    protected $defaultSoftDelete = 0;
  • 单记录删除
    — 方法一,非主键删除

    $model = User::where('name','张三')->limit(1)->find();
    if (!is_null){
        $model->delete();
    }

– 方法二,主键删除

    $id = 5;
    User::destroy($id);

哈哈哈,这里注意!!!
如果直接使用:User::where('name','张三')->delete();是删除不掉的!
如果直接使用:User::where('id',5)->destroy();是要报错的!
搞笑不?!

批量删除最佳实践update

如果要批量软删除怎么办?
假如我们要批量软删除group_id = 2的用户,那么就这样操作!

    User::where('group_id', 2)->update(['isdel' => time()]);
分享给朋友:

相关文章

php获取文件mime的方法,相对完整,并且已经测试

已经经过测试也相对完整,优先自带类和方法,如果自带类或者方法没有开启的情况下,通过文件扩展名实现,文件扩展名关联了176种如果实在没有开启相关组件也没有匹配到,那么就返回:application/oc...

【转】Swoole和Workerman到底选谁?

【转】Swoole和Workerman到底选谁?

Swoole:面向生产环境的 PHP 异步网络通信引擎       使 PHP 开发人员可以编写高性能的异步并发 TCP、UDP、Unix Socket、HTT...

PHP将图片自动缩放成指定大小:autoCropImage,含nginx伪静态

autoCropImage自己一直在用,并且加入了webp格式转换具体说明和介绍如下:autoCropImage - 图片自动缩放程序将图片自动缩放成指定大小,减少图片体积,从而加快下载速度,降低下载...

Composer的初步使用以及Composer切换国内源(阿里云)

Composer安装(Windows系统)下载:https://getcomposer.org/Composer-Setup.exe一步步安装即可。需要注意的是你需要开启 openssl 配置,我们打...

困扰了很久的PHP跨域问题

其实这个问题一直是不存在的,只是自己因为各种配置吧,导致了这个问题一直没有解决。现在就解决思路提供如下: 需要两步操作一、修改Nignx配置文件一般在宝塔面板伪静态中设置示例代码: locatio...

thinkphp6模型中联合主键、中间表调用的写法

前言Thinkphp框架是不错,但是一些特殊用法几乎找不到文档。模型就新手来说感觉会很麻烦,但是实际上习惯之后会很方便,比如入库和出库的自动格式化,再比如安全的入库。而且模型会让你养成良好的开发习惯,...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。
请先 登录 再评论,若不是会员请先 注册