ホームページ > 記事 > PHPフレームワーク > 実践的なヒント: Laravel で中国語の検証ルールをカスタマイズする
Laravel の開発プロセス中、通常の状況では、フレームワークによって提供されるデフォルトの検証ルールを使用して、ユーザーが入力したデータを検証しますが、場合によっては、いくつかのカスタマイズが必要になることがあります。ビジネス ニーズを満たす特定の検証ルール。この記事では、Laravel で中国語の検証ルールをカスタマイズする方法と、具体的なコード例を紹介します。
Laravel の検証ルールはすべて Validator クラスを通じて実装されます。 Validator クラスは、ルールを検証するための一連のメソッドを提供します。Validator クラスを継承し、カスタム ルール メソッドを追加することで、カスタム検証ルールを実装できます。
まず、カスタム検証ルールを登録するための ServiceProvider を作成する必要があります。コマンド ラインで次のコマンドを実行して、新しいサービス プロバイダーを作成します。
php artisan make:provider CustomValidationRulesServiceProvider
次に、app/Providers
ディレクトリで CustomValidationRulesServiceProvider.php
ファイルを見つけて、そのファイルを開きますboot
メソッドにカスタム検証ルールを登録します:
<?php namespace AppProviders; use IlluminateSupportServiceProvider; use IlluminateSupportFacadesValidator; class CustomValidationRulesServiceProvider extends ServiceProvider { public function boot() { Validator::extend('custom_rule', function ($attribute, $value, $parameters, $validator) { // 自定义验证规则的具体逻辑,这里可以根据业务需求编写验证逻辑 return $value === 'custom_value'; }); } public function register() { // } }
上記のコードでは、custom_rule
という名前のカスタム検証ルールを定義し、検証ロジックは次のように記述されます。クロージャー関数で。ここでは単純に入力値が custom_value
に等しいかどうかを判断していますが、実際の業務では必要に応じてより複雑な論理的な判断を行うことができます。
次に、作成した ServiceProvider を app/Providers/AppServiceProvider.php
に登録する必要があります。 AppServiceProvider
の boot
メソッドの app()->register()
メソッドを使用して、カスタム ServiceProvider を登録します:
public function boot() { $this->app->register(CustomValidationRulesServiceProvider::class); }
カスタム検証ルールを作成して登録したので、フォーム検証でカスタム ルールを使用できます。たとえば、ログイン フォームの検証メソッドを appHttpControllersUserController.php
に記述します。
public function login(Request $request) { $validatedData = $request->validate([ 'username' => 'required', 'password' => 'required|min:6|custom_rule', // 使用自定义规则 ]); // 其他处理逻辑 }
上記のコードでは、パスワード フィールドの検証ルール custom_rule にカスタム ルールを追加します。
これにより、ユーザー フォームが送信されたときにカスタム ルールの検証ロジックがトリガーされます。
上記の手順により、Laravel でカスタム中国語検証ルールを作成し、コードでそのルールを使用することができました。このようにして、Laravel の検証機能を簡単に拡張して、さまざまなビジネス ニーズを満たすことができます。
以上が実践的なヒント: Laravel で中国語の検証ルールをカスタマイズするの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。