Laravelの日時に関するバリデーション実例メモ

0pt   2018-11-08 11:30
IT技術情報局

想定環境

  • Laravel5.5以降
  • 入力フォーム
    「開始日時」(start_datetime)
    「終了日時」(end_datetime)
    がある

実例

1・片方入力された場合はどちらも必須にする判定

public function rules() {   $rules = [    'start_datetime' => 'nullable|required_with:end_datetime',    'end_datetime' => 'nullable|required_with:start_datetime'  ]; }

2・終了日が開始日の後であるか判定

public function rules() {  $rules = [    'end_datetime' => 'after:start_datetime' ]; }

3・入力された内容が指定された形式か判定

public function rules() {  $rules = [    'start_datetime' => 'date_format:"Y/m/d H:i:s"',    'end_datetime' => 'date_format:"Y/m/d H:i:s"' ]; }

または
(指定された形式で、かつ数字以外が送られてきていないか判定)

public function rules() {  $rules = [    'start_datetime' => 'regex:/[0-9]+/[0-9]+/[0-9]+s-s[0-9]+/[0-9]+/[0-9]+/',    'end_datetime' => 'regex:/[0-9]+/[0-9]+/[0-9]+s-s[0-9]+/[0-9]+/[0-9]+/' ]; }

Source: php

   ITアンテナトップページへ
情報処理/ITの話題が沢山。