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('email'); } } ?>
Penyelesaian:
Jika anda mahukan satu pengesahan, anda boleh memanggilnya secara statik
// 验证是否有效邮箱地址 use think\facade\Validate; Validate::isEmail('thinkphp@qq.com'); // true
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 = [ 'name' => 'require|max:25', 'email' => 'email', ]; protected $message = [ 'name.require' => '名称必须', 'name.max' => '名称最多不能超过25个字符', 'email' => '邮箱格式错误', ]; }
Digunakan dalam pengawal:
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()); } } }
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!