PHP 批量软删除excel表中用户

工作中遇到我们开发的A站,是B公司旗下子网站。

可以用B站的会员账号直接登录注册。

当用户注销了B站的会员,

A站的账号依旧存在。

但是无法登录了。

如果注册时用户勾选了接收A站的广告邮件。

也就会持续收到A网站发送的邮件。

下一次邮件发送就在两天后,

B站提供了一个excel,里面是两百人左右的注销用户的信息,

要求我们尽快将这些账号软删除,避免邮件发送。

我的处理方法是

1. 整理excel表中的注销用户信息。用concat拼接id和email备用,再把c列复制到编辑器,外层加个方括号,就成php二维数组了。    

2. 写接口批量修改delete字段实现软删除。

public function memberWithdraw()
    {
        // 定义刚刚整理出的user数组
        $userList = [
            [1033,'aaa@163.com'],
            [1045,'aaa@164.com'],
            [1057,'aaa@165.com'],
            [1069,'aaa@166.com'], 
        ];        
        // 取得数组长度
        $userAmount = count($userList);

        // 定义未删除成功的user数组
        $notDelList = [];

        // 遍历数组修改user的deleted字段进行软删除
        for($i=0;$i<$userAmount;$i++){
            $member = Member::where('id',$userList[$i][0])->where('email',$userList[$i][1])->first();
            if (!$member) {
                array_push($notDelList,$userList[$i]);
            }else{
                // 删除时间是B站的人指定的
                $member->deleted = '2022-05-30 00:00:00';
                $member->save();
            }
        }        

        $response = [
            'status_code' => '00',
            'error_message' => '',
            'not_del_list' => $notDelList,
        ];     
   
        return response()->json($response, 200);
    }

以上。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值