自定义验证规则对象
执行 make:rule
Artisan 命令,创建目录
继承Rule编写自定义方法
/**
* 【json格式校验】
* Class JsonFormat
* @package App\Rules
*/
class JsonFormat implements Rule
{
/**
* Determine if the validation rule passes.
*
* @param string $attribute
* @param mixed $value
* @return bool
*/
public function passes($attribute, $value)
{
$data = json_decode($value, true);
if (!$data) {
return false;
}
foreach ($data as $item) {
if (array_key_exists('exam_id', $item) == false) {
return false;
}
if (array_key_exists('option_id', $item) == false) {
return false;
}
}
return true;
}
/**
* Get the validation error message.
*
* @return string
*/
public function message()
{
return ':attribute 必须包含 exam_id 以及 option_id 字段';
}
}
passes
为校验方法;$attribute
参数是属性;$value
是参数值
返回结果 true
则通过校验;fasle
则不通过
message
为校验失败显示的文案