当前位置: 首页 > 新闻动态 > 技术教程

说说Thinkphp5.1实现邮箱验证问题

作者:藏色散人 浏览: 发布日期:2021-11-16
[导读]:下面thinkphp框架教程栏目将给大家讲解Thinkphp5.1实现邮箱验证问题,希望对需要的朋友有所帮助!

下面thinkphp框架教程栏目将给大家讲解thinkphp5.1实现邮箱验证问题,希望对需要的朋友有所帮助!

具体问题:

比如我想验证这个email是否合法 我想用TP的自带的验证规则 应该怎样验证呢?我看手册上要定义个User类我们定义一个\app\index\validate\User验证器类用于User的验证。 TP框架验证邮箱用户名什么的要这么麻烦吗?这个验证器类要写在哪里呢?跟控制器同级目录下吗?

解决办法:

要单个验证,可以静态调用的哦

// 验证是否有效邮箱地址
use think\facade\Validate;
Validate::isEmail('thinkphp@qq.com'); // true

如果验证的东西比较多,建议还是推荐使用验证器

验证器类可以自定义目录,建议放在 \app\index\validate目录下。

验证器类

namespace app\index\validate;
use think\Validate;
class User extends Validate
{
    protected $rule =   [
        'name'  => 'require|max:25',
        'email' => 'email',    
    ];
    
    protected $message  =   [
        'name.require' => '名称必须',
        'name.max'     => '名称最多不能超过25个字符',
        'email'        => '邮箱格式错误',    
    ];
    
}

在控制器里使用:

namespace app\index\controller;
use think\Controller;
class Index extends Controller
{
    public function index()
    {
        $data = [
            'name'  => 'thinkphp',
            'email' => 'thinkphp@qq.com',
        ];
        $validate = new \app\index\validate\User;
        if (!$validate->check($data)) {
            dump($validate->getError());
        }
    }
}
免责声明:转载请注明出处:http://sczxchw.cn/news/37246.html

扫一扫高效沟通

多一份参考总有益处

免费领取网站策划SEO优化策划方案

请填写下方表单,我们会尽快与您联系
感谢您的咨询,我们会尽快给您回复!