Tobilog-Selection
こんにちは!トビログ管理人のトビログです!本日はLaravel 8にてカタカナのバリデーションルールを追加する方法について説明していきたいと思います!
AppServiceProviderに追加する
app/Providers/AppServiceProvider.phpのbootメソッドの中に以下の様なコードを追加します!
- ひらがな
Validator::extend('hiragana', function ($attribute, $value, $parameters, $validator) {
return preg_match('/^[ぁ-ゞ]+$/u', $value);
});
- カタカナ
Validator::extend('katakana', function ($attribute, $value, $parameters, $validator) {
return preg_match('/[ァ-ヴー]+/u', $value);
});
バリエーションの時に追加する
laravel 8ににてバリデーションを追加するところ(requiredとか書く)ところにkatakanaと書けば動きます!
つまり普通にrequestファイルに書いたり、コントローラーのバリデーションしているところに書けばOK
ここのコードの説明と応用
上記のコードでやっていることは
Validator::extend('〇〇〇〇〇〇', function ($attribute, $value, $parameters, $validator) {
return preg_match('△△△△△△△', $value);
});
〇〇〇〇〇〇のところに追加したいバリエーション名をします。△△△△△△△には正規表現を書きます。
ということは、
Validator::extend('〇〇〇〇〇〇', function ($attribute, $value, $parameters, $validator) {
return △△△△△△△
});
〇〇〇〇〇〇にバリデーション名、△△△△△△△に処理(trueだとバリデーションが通ります)を書けばいいということになります!
こんなに簡単に追加できるなんて知りませんでした!
トビログでは今後もlaravelの記事を書いていきたいと思っています!もし気になることなどがあればTwitterにて教えてください!
コメント