2018年1月5日金曜日

PHPのバリデーションライブラリ「Wixel/GUMP」

PHPのバリデーションライブラリ「Wixel/GUMP」を設定してみました。 Laravelライク(?)な使い勝手で、すんなり導入できます。フィルターも用意されていて、至れり尽くせり。

// 日本語ファイル(ja.php)を用意して、langフォルダの中に保存する
$lang = 'ja';
$gump = new GUMP($lang);

// バリデーション
$gump->validation_rules(array(
  'username'   => 'required|max_len,100|min_len,2',
  'email'      => 'required|valid_email',
));

// フィルター
$gump->filter_rules(array(
  'username' => 'trim|sanitize_string',
  'email'    => 'trim|sanitize_email',
));

$validated_data = $gump->run($_POST);

if($validated_data === false) {
  // NG
  $errors = $gump->get_errors_array() ;
  $app->render("contact.twig", compact('errors'));
} else {
  // OK(バリデーションを通って、フィルターされたデータが取得できる)
  print_r($validated_data); 
}

実際に設定してみたのがこちら

0 件のコメント:

コメントを投稿