• 技术文章 >php框架 >ThinkPHP

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

    藏色散人藏色散人2021-11-22 15:51:39转载410
    下面thinkphp框架教程栏目将给大家讲解Thinkphp5.1实现邮箱验证问题,希望对需要的朋友有所帮助!

    具体问题:

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

    <?php
    namespace app\index\controller;
    use think\Controller;
    use think\facade\Request;
    use think\response;
    use think\View;
    use think\Validate;
    class Register extends Controller
    {
        public function regcheck(){
            $data=input('email');
            
        }
    }
    ?>

    解决办法:

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

    // 验证是否有效邮箱地址
    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());
            }
        }
    }

    以上就是说说Thinkphp5.1实现邮箱验证问题的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:segmentfault,如有侵犯,请联系admin@php.cn删除
    专题推荐:Thinkphp5.1
    上一篇:小白笔记之简单快速搭建ThinkPHP5并使用 下一篇:聊聊TP框架中的钩子有何用?
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【腾讯云】年中优惠,「专享618元」优惠券!• 一文讲解thinkphp5中是如何自定义全局异常• 讲解thinkphp5.1如何实现多线程爬虫• 小白学习thinkphp记录之如何实现清除缓存• thinkphp6不能用redirect重定向是什么情况?• 小白笔记之简单快速搭建ThinkPHP5并使用
    1/1

    PHP中文网