thinkphp6 验证器(提交表单等场景用)

本文详细介绍了ThinkPHP6框架中的验证器组件,主要用于处理表单提交和其他数据验证场景。通过自定义验证规则,你可以确保输入数据的安全性和准确性。文章涵盖了创建验证器、使用验证场景、处理验证失败及自定义错误消息等内容,帮助开发者更高效地管理应用的验证逻辑。
摘要由CSDN通过智能技术生成
<?php
	//验证器的使用,我们必须先定义它,系统提供了一条命令直接生成想要的类;

	php think make:validate User//这条命令会自动在应用目录下生成一个 validate 文件夹,并生成 User.php 类;
	
	class User extends Validate
	
	//自动生成了两个属性:$rule 表示定义规则,$message 表示错误提示信息;
	protected $rule = [
		'name' => 'require|max:20', //不得为空,不得大于 20 位
		'price' => 'number|between:1,100', //必须是数值,1-100 之间
		'email' => 'email' //邮箱格式要正确
	];

	protected $message = [
		'name.require' => '姓名不得为空',
		'name.max' => '姓名不得大于 20 位',
		'price.number' => '价格必须是数字',
		'price.between' => '价格必须 1-100 之间',
		'email' => '邮箱的格式错误'
	];

	//如果不设置$message 定义的话,将提示默认的错误信息

	//验证器定义好了之后,我们需要进行调用测试,创建一个 Verify.php 控制器;
	try {
   
		validate(User::class)->check([
		'name|用户名' => '蜡笔小新',
		'price' => 90,
		'email' => 'xiaoxin@163.com'
		]);
	} catch (ValidateException $e) {
   
		dump($e->getError());
	}

	//默认情况下,出现一个错误就会停止后面字段的验证,我们也可以设置批量验证;
	validate(User::class)->batch(true)...

	//系统提供了常用的规则让开发者直接使用,也可以自行定义独有的特殊规则;
	protected $rule = [
		'name' => 'require|max:20|checkName:李炎恢',
	];
	//自定义规则,名称中不得是“李炎恢”
	protected function checkName($value, $rule)
	{
   
		return $rule != $value ? true : '名称存在非法称谓';
	}
	//对于自定义规则中,一共可以有五个参数,我们分别了解一下;
	protected function checkName
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值