FuelphpでValidationクラスを使用し、エラーを出力した際にエラーメッセージを日本語で出力する方法をメモします。
最初の設定では英語で表示されるので。
エラーメッセージは日本語で出力することが多いと思うので、最初に設定してると実装しやすくなると思います。
また、エラーメッセージを個別に設定して、設定ファイルの内容を上書きする方法をメモします。
■ 日本語のエラーメッセージを設定
設定ファイルで日本語のファイルを読み込むように設定します。
「fuel/app/config/config.php」の「language」の箇所を「ja」に変更します。
/** * Localization & internationalization settings */ 'language' => 'ja', // Default language 'language_fallback' => 'en', // Fallback language when file isn't available for default language 'locale' => 'ja_JP.utf8', // PHP set_locale() setting, null to not set 'encoding' => 'UTF-8',
日本語のエラーメッセージファイルを設定します。
「fuel/app/lang/ja/validation.php」を作成し、日本語のエラーメッセージを記述します。
※エラーメッセージは出力したい内容に変更してOKです。
<?php return array( 'required' => ':label は必須入力です。', 'min_length' => ':label は、:param:1 文字以上で入力して下さい。', 'max_length' => ':label は、:param:1 文字以下で入力して下さい。', 'exact_length' => ':label は、:param:1 文字で入力して下さい。', 'match_value' => ':label は、使用できない文字が含まれています。使用可能な文字 [:param:1] ', 'match_pattern' => ':label は、:param:2で入力して下さい。', 'match_field' => ':label は、:param:1 と異なっています。', 'valid_email' => ':label は メールの形式で入力して下さい。', 'valid_emails' => ':label に、有効でないメールアドレスが含まれています。', 'valid_url' => ':label は、有効なURLではありません。', 'valid_ip' => ':label は、有効なIPアドレスではありません。', 'numeric_min' => ':label には、:param:1 より大きい数値を入力して下さい。', 'numeric_max' => ':label には、:param:1 より小さい数値を入力して下さい。', 'valid_string' => ':labelは:param:2で入力してください。', );
上記の設定が完了したら、設定したエラーメッセージで出力されます。
個別に設定する場合は「set_message()」を使用して設定します。
$validation = \Validation::forge(); $validation->set_message('required', ':label は必ず入力してください。'); $validation->add('name', 'name') ->add_rule('trim') ->add_rule('required');
エラーメッセージが「set_message()」で指定した内容で出力されます。