搜索

首页  >  问答  >  正文

在 CodeIgniter4 中创建自定义验证错误消息

<p>如何为自定义验证创建自定义错误消息。我正在使用 codeIgniter4</p> <p>好吧,我是 CI4 的新手,我使用 Spark 命令 <code> 创建了一个自定义验证文件 ./spark make:validation</code> 它可以工作,但问题是我仍然不知道如何也可以自定义错误消息,例如当我尝试验证日期 05-06-2022 时,消息是 <strong>Validation.isWeekday</strong>,我想让它说一些有意义的内容,例如日期不是工作日。< /p> <p>这就是我的验证的样子</p> <pre class="brush:php;toolbar:false;">namespace App\Validation; class CustomDateValidation { public function isWeekday(string $date): bool { return date("N", strtotime($date)) < 6; } } </pre> <p>我的控制器功能看起来有点像这样</p> <pre class="brush:php;toolbar:false;">if($this-validate(['date'=>'required|isWeekday'])){ ... } </pre></p>
P粉785957729P粉785957729459 天前549

全部回复(1)我来回复

  • P粉352408038

    P粉3524080382023-08-29 16:45:45

    您可以为要验证的每个字段传递一个选项数组,而不仅仅是规则字符串:

    if($this-validate([
      'date'=> [
        'rules' => 'required|isWeekday',
        'errors' => [
           'required' => 'The date field is required',
           'isWeekday' => 'The date must be a weekday'
        ],
      ])){
    ...
    }

    回复
    0
  • 取消回复