一直在写程序的时候,打开控制器看到密密麻麻的代码的时候感觉真的很头痛,封装方法以前也有想过,说实在的真的是不知道该如何下手,昨天的课程可以说是耳目一新,
可以解决很多问题,首先对于代码量的减少是最大的,并且可以在代码运行中可以减少很多不必要代码,在程序运行中得到很大的速度提升;
访问地址:demo.nmgseozx.com/admin/login
码云:
https://gitee.com/daogujin/qingyu.git
github
https://github.com/qingyuxiaoxiao/qingyu.git
2、在昨天编写代码时管理员修改,判断是否存在时,出现的问题,也是刚好昨天课程中讲解,这个问题也是我一直遇到的问题,刚好在昨天的课程中的到完美解决;
并且针对昨天自己编写的管理员编辑进行了一个整体的调整,可以说一个方法实现两个方法;给予很大的帮助;
附上调整后的代码;
//执行管理员添加 public function save(Request $request) { $aid = (int)$request->aid; $username = trim($request->username); $pwd = trim($request->pwd); $data['gid'] = (int)$request->gid; $data['real_name'] = trim($request->real_name); $data['phone'] = trim($request->phone); //获取前端发送来的on 及OFF 设置别名 $data['status'] = $request->status == 'on'?0:1; //判断ID等于0 或 用户名==0这做提示 if ($aid === 0 && $username == ''){ exit(json_encode(array('code'=>1,'msg'=>'用户名不能为空'))); } //判断角色不能为空 if ($data['gid'] == ''){ exit(json_encode(array('code'=>1,'msg'=>'角色不能为空'))); } //执行保存数据库 if ($aid == 0){ $res = DB::table('admin')->where('username',$username)->first(); if ($res){ exit(json_encode(array('code'=>1,'msg'=>'该账户已经存在'))); } if ($pwd == ''){ exit(json_encode(array('code'=>1,'msg'=>'密码不能为空'))); } $data['username'] = $username; //添加时间 $data['add_time'] = time(); //通过哈希加密 $data['password'] = password_hash($pwd,PASSWORD_DEFAULT); DB::table('admin')->insert($data); }else{ //判断用户是否输入密码 if ($pwd){ $data['password'] = password_hash($pwd,PASSWORD_DEFAULT); } $data['update_time'] = time(); DB::table('admin')->where('id',$aid )->update($data); } exit(json_encode(array('code'=>0,'msg'=>'保存成功'))); }
该方式使用一个通用方法将新增及更新进行处理;可以省略一个方法;