Member.php 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. <?php
  2. namespace App\Models;
  3. use Illuminate\Notifications\Notifiable;
  4. use Illuminate\Foundation\Auth\User as Authenticatable;
  5. use Spatie\Permission\Traits\HasRoles;
  6. use App\Notifications\ResetPasswordNotification;
  7. class Member extends Authenticatable
  8. {
  9. protected $table = 'members';
  10. protected $fillable = ['phone','name','password','avatar','remember_token','uuid'];
  11. protected $hidden = ['password','remember_token'];
  12. /**
  13. * 上传用户基本信息头像
  14. *
  15. * @access public
  16. * @return String
  17. */
  18. public function updateHeader($member_id)
  19. {
  20. // 规定上传格式
  21. $allowedType = ["png", "jpg", "gif"];
  22. $allowedExtensions = ["image/jpg","image/jpeg","image/png","image/pjpeg","image/gif","image/bmp","image/x-png"];
  23. // 最大为 100 Kb
  24. $maxSize = 102400;
  25. // 获取上传文件
  26. $img = $_FILES['img'];
  27. // 获取上传文件格式并转换为小写
  28. $imgType = strtolower(substr($img['name'],strrpos($img['name'],".") + 1));
  29. // 判断格式是否符合要求
  30. if (!in_array($imgType, $allowedType) || !in_array(strtolower($img['type']), $allowedExtensions)) {
  31. return toJson(-40001);
  32. }
  33. if ($img['size'] > $maxSize) {
  34. return toJson(-40002);
  35. }
  36. // 修改文件名
  37. $imgName = strtotime('now') + rand(10000, 99999);
  38. $filePath = ROOT_PATH . '/images/header/';
  39. $imgPath = '/Public/images/header/' . $imgName . ".png";
  40. if (move_uploaded_file($img['tmp_name'], $filePath . $imgName . ".png")) {
  41. $oldImg = $this->where('id',$member_id)->select('avatar')->first();
  42. if(!empty($old_avatar)){
  43. $old_avatar->toArray();
  44. // 删除以前的文件
  45. unlink(ROOT_PATH . $oldImg ->avatar);
  46. }
  47. return $imgPath;
  48. } else {
  49. return "";
  50. }
  51. }
  52. /*
  53. * 更改用户信息
  54. */
  55. public function editorMemberDetails($member_id,$data){
  56. $update = $this->where('id',$member_id)->update($data);
  57. if($update){
  58. return 1;
  59. }
  60. return -20006;
  61. }
  62. }