ホームページ  >  記事  >  中国語でlaravel検証を変更する方法

中国語でlaravel検証を変更する方法

DDD
DDDオリジナル
2023-07-05 14:54:331618ブラウズ

laravel で中国語を変更および検証する手順: 1. カスタム バリデータを作成し、Requests フォルダーに新しい PHP ファイルを作成します; 2. 検証ルールを定義し、元の英語の検証ルールを中国語の検証ルールに置き換えます。 3. カスタム バリデータ クラスのメッセージ メソッドで中国語のプロンプト情報を定義します; 4. カスタム バリデータを使用し、validate メソッドを使用してリクエスト データを検証します。検証が失敗した場合は、自動的に前のページにリダイレクトされ、エラー メッセージが表示されますユーザーに。

中国語でlaravel検証を変更する方法

#この記事の動作環境: Windows 10 システム、laravel 9 バージョン、dell g3 コンピューター。

Laravel は、強力な認証機能が組み込まれた人気のある PHP 開発フレームワークです。 Laravel では、デフォルトの検証ルールは英語に基づいているため、中国語の検証ルールを変更するには、いくつかの追加の処理が必要です。

Laravelのバリデーションルールの中国語情報を変更する方法を紹介します。

1. カスタム バリデーターの作成

まず、カスタム バリデーター クラスを作成する必要があります。 Laravel では、バリデータークラスは通常 app/Http/Requests ディレクトリに配置されます。このディレクトリに Requests フォルダーがない場合は、自分で作成できます。

Requests フォルダーに CustomValidation.php などの新しい PHP ファイルを作成します。このファイルでは、Laravel の基本バリデータ クラス Illuminate\Foundation\Http\FormRequest から継承するカスタム バリデータ クラスを定義します。コードは次のとおりです:

namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class CustomValidation extends FormRequest
{
    public function rules()
    {
        // 定义规则
    }
    public function messages()
    {
        // 定义中文提示信息
    }
}

2. 検証ルールを定義します

カスタム バリデータ クラスの rules メソッドで、必要な検証ルールを定義できます。ここでは、元の英語の検証ルールを中国語の検証ルールに置き換える必要があります。

たとえば、ユーザー名を確認したいとします。元のルールは 'name' => 'required|string|min:3|max:255' です。このルールを中国語で書きます。たとえば、「名前」 => 「必須|文字列|最小:3|最大:255」。ルールを定義したら、それらを rules メソッドに返します。

次は、ユーザー名に対する中国語の検証ルールを実装する例です:

public function rules()
{
    return [
        'name' => 'required|string|min:3|max:255',
    ];
}

3. 中国語のプロンプト情報を定義します

カスタマイズ中バリデータークラスのmessagesメソッドを使用すると、中国語のプロンプト情報を定義できます。ルールの検証が失敗すると、Laravel は設定ファイルに表示されている言語に基づいて、対応するエラーメッセージを返します。したがって、メッセージメソッドで中国語のプロンプト情報を定義する必要があります。

ルールの定義と同様に、検証ルールごとに異なるプロンプト情報を定義できます。たとえば、ユーザー名ルールの中国語プロンプト情報を次のように定義します:

public function messages()
{
    return [
        'name.required' => '用户名不能为空',
        'name.min' => '用户名至少为3个字符',
        'name.max' => '用户名最多为255个字符',
    ];
}

4. カスタム バリデータの使用

これで、カスタム バリデーター ルール定義。検証が必要なコントローラー メソッドで使用できます。フォームリクエストを検証したいとします。コントローラーメソッドのパラメーターにカスタムバリデーターのインスタンスを挿入できます。

validate メソッドを使用してリクエスト データを検証します。検証が失敗した場合は、自動的に前のページにリダイレクトされ、エラー メッセージが表示されます。コントローラー メソッドに次のコードを追加できます。

public function store(CustomValidation $request)
{
    $validatedData = $request->validate();
    // 执行其他逻辑
}

上記のコードでは、CustomValidation クラスをパラメーターとしてストア メソッドに渡します。 $request->validate() はリクエスト データを自動的に検証し、検証されたデータを返します。

要約:

上記の手順により、Laravel の検証ルールの中国語情報を正常に変更できます。まず、カスタム バリデータ クラスを作成し、Illuminate\Foundation\Http\FormRequest から継承します。次に、カスタム検証ルールを定義し、元の英語の検証ルールを置き換えます。最後に、検証が失敗した場合にユーザーに表示される中国語のプロンプト情報を定義します。

以上が中国語でlaravel検証を変更する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。