Laravel 中是否可以自定义验证
我追溯了一下源码,看好像没有说可以使用自定义方法去做的,就类似于tp或者Yii的
tp
'shop_price' => ['required', 'regex'=>'([1-9]\d*(\.\d*[1-9])?)|(0\.\d*[1-9])','checkShopPrice'],
Yii
public function rules()
{
$rules = parent::rules();
$rules[] = [['tag_ids', 'port_ids','industry_ids','WORLD_AREA_ID','PROV_AREA_ID'], 'safe'];
$rules[] = [['raw_content'], 'string'];
$rules[] = [['industry_ids'], 'required'];
$rules[] = ['ONLY_WEB_NAPPINFORM' , 'validateOnlyWebApp'];
return $rules;
}
这种形式的?
目前laravel中只有这两种方式
//方法1 控制器验证
$this->validate($request,[
'Student.name' => 'required|min:2|max:20',
'Student.age' => 'required|integer',
'Student.sex' => 'required|integer',
],[
'required'=>':attribute 为必填项',
'min' => ':attribute 长度不符合要求',
'integer' => ':attribute 必须是一个整形',
],[ 'Student.name' => '姓名',
'Student.age' => '年龄',
'Student.sex' => '性别',
]);
//方法2 Validator类验证
$validator = \Validator::make($request->input(),[
'Student.name' => 'required|min:2|max:20',
'Student.age' => 'required|integer',
'Student.sex' => 'required|integer',
],[
'required'=>':attribute 为必填项',
'min' => ':attribute 长度不符合要求',
'integer' => ':attribute 必须是一个整形',
],[ 'Student.name' => '姓名',
'Student.age' => '年龄',
'Student.sex' => '性别',
]);
求解啊
我自己追溯了源码,我觉得这种方式挺好的https://note.youdao.com/ynoteshare1/mobile.html?id=f1d6fda7bdd7e005f608901a2f237382&type=note&from=timeline
我自己追溯了源码,我觉得这种方式挺好的 note.youdao.com/ynoteshare1/mobile...