Rumah > rangka kerja php > ThinkPHP > Mari kita bincangkan tentang isu pengesahan e-mel dalam Thinkphp5.1

Mari kita bincangkan tentang isu pengesahan e-mel dalam Thinkphp5.1

藏色散人
Lepaskan: 2021-11-22 15:51:39
ke hadapan
2128 orang telah melayarinya

Lajur tutorial thinkphp berikut akan menerangkan kepada anda isu pengesahan e-mel dalam Thinkphp5.1 Saya harap ia dapat membantu rakan yang memerlukan!

Soalan khusus:

Sebagai contoh, saya ingin mengesahkan sama ada saya ingin menggunakan peraturan pengesahan TP sendiri. Saya melihat bahawa manual memerlukan penentuan kelas Pengguna Kami mentakrifkan kelas validator appindexvalidateUser untuk pengesahan Pengguna. Adakah sangat menyusahkan rangka kerja TP untuk mengesahkan nama pengguna e-mel? Di manakah kelas pengesah ini harus ditulis? Adakah ia berada dalam direktori yang sama dengan pengawal?

<?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(&#39;email&#39;);
        
    }
}
?>
Salin selepas log masuk

Penyelesaian:

Jika anda mahukan satu pengesahan, anda boleh memanggilnya secara statik

// 验证是否有效邮箱地址
use think\facade\Validate;
Validate::isEmail(&#39;thinkphp@qq.com&#39;); // true
Salin selepas log masuk

Jika perkara itu untuk disahkan adalah agak serupa Ramai, adalah disyorkan untuk menggunakan pengesah

Kelas pengesah boleh menyesuaikan direktori, dan disyorkan untuk meletakkannya dalam direktori appindexvalidate.

Kelas Pengesah

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

Digunakan dalam pengawal:

namespace app\index\controller;
use think\Controller;
class Index extends Controller
{
    public function index()
    {
        $data = [
            &#39;name&#39;  => &#39;thinkphp&#39;,
            &#39;email&#39; => &#39;thinkphp@qq.com&#39;,
        ];
        $validate = new \app\index\validate\User;
        if (!$validate->check($data)) {
            dump($validate->getError());
        }
    }
}
Salin selepas log masuk

Atas ialah kandungan terperinci Mari kita bincangkan tentang isu pengesahan e-mel dalam Thinkphp5.1. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:segmentfault.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan