现在模型中想要给定错误信息有其他方式吗

浏览:2102 发布日期:2019/05/17 分类:ThinkPHP6专区
之前在tp5.1里可以通过设置模型的error属性值,并通过getError()方法获取自定义错误信息,这里举个例子,比如:
app/admin/model/Admin.php    /**
     * 登录的具体实现
     *
     * @param String username 用户名
     * @param String password 密码 
     */
    public function login($username, $password) {
        // 查找管理员
        $admin = $this->where('username', $data['username'])->find();

        // 密码错误
        if(!$admin || $admin['password'] !== encrypt_password($data['password'], $admin['pwd_salt'])) return $this->error = '用户名或密码不正确';
    }
app/admin/controller/Login.php    /**
     * 登录
     * 
     */
    public function login() {
        $data = request()->param();

        // 1.数据验证
        // ...

        // 2.登录
        $admin = model('admin');
        $admin->login($data);

        // 返回错误信息
        if($admin->getError()) return $admin->getError();

    }
不过在tp6中,模型里去掉了error属性和getError()方法,就不能再用之前举例的方式来返回错误信息了,请问还有其他比较简便的方式吗?

我现在能想到的有抛异常;还有写一个模型基类,里面加上原来的属性error和getError()方法。
最佳答案
评论( 相关
后面还有条评论,点击查看>>