このページの翻訳:
- 日本語 (ja)
- English (en)
最近の更新
- 03 Zed editor 設定 [Windowsでビルド]
- 09 ↷ 50_dialy:2025:09:09 から 50_dialy:2025:09:08 へページを名称変更しました。
- 06 ↷ 50_dialy:2025:06 から 50_dialy:2025:09:06 へページを移動しました。
最近の更新
Laravelでカスタムバリデーションを作成する方法
php artisan make:provider ValidatorServiceProvider
app/Providers/ValidatorServiceProvider.php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use Domain\CustomValidator;
class ValidatorServiceProvider extends ServiceProvider
{
/**
* Bootstrap the application services.
*
* @return void
*/
public function boot()
{
\Validator::resolver(function ($translator, $data, $rules, $messages) {
return new CustomValidator($translator, $data, $rules, $messages);
});
}
/**
* Register the application services.
*
* @return void
*/
public function register()
{
//
}
}
config/app.php
'providers' => [
...
App\Providers\ValidatorServiceProvider::class,
...
※カスタムバリデーションのメソッド名は、必ずvalidateXXXXという名前にする
app/CustomValidator.php
<?php
namespace App;
class CustomValidator extends \Illuminate\Validation\Validator
{
/**
* なまえのバリデーション
*
* @param $attribute
* @param $value
* @param $parameters
* @return bool
*/
public function validateName($attribute, $value, $parameters)
{
if (preg_match('/[^a-Z]/u', $value) !== 0) {
return false;
}
return true;
}
}
resources/lang/ja/validation.php
'name' => 'The :attribute no valid name',
'attributes' => [
...
'family_name_name' => 'ふりがな(せい)',
$request->validate([
'name' => 'required|Name',
]);