ホームページ >バックエンド開発 >PHPチュートリアル >laravelでの動的フォーム検証は、plabited_ifを使用しています
prohibited_if
理解
ルールは、条件が満たされている場合、特定のフィールドが空のままであることを保証します。これは、相互接続されたフィールドを持つ動的な形式に特に便利です。
例:prohibited_if
現実世界のアプリケーション:メンバーシップ登録prohibited_if
専門のメンバーシップ登録システムを検討してください:
use Illuminate\Support\Facades\Validator; $validator = Validator::make($request->all(), [ 'freelance_company' => 'prohibited_if:type,individual', 'type' => 'required|in:individual,business' ]);
この例では:
。
に基づく条件付きフィールド要件<?php namespace App\Http\Controllers; use App\Models\Membership; use Illuminate\Http\Request; use Illuminate\Validation\Rule; class MembershipController extends Controller { public function store(Request $request) { $request->validate([ 'membership_type' => 'required|in:personal,corporate', 'full_name' => 'required|string|max:255', 'organization_name' => [ 'prohibited_if:membership_type,personal', 'required_if:membership_type,corporate', 'string', 'max:255', ], 'organization_size' => [ 'prohibited_if:membership_type,personal', 'required_if:membership_type,corporate', 'integer', 'min:1', ], 'tax_id' => [ Rule::prohibitedIf(fn() => $request->membership_type === 'personal' || $request->country !== 'US' ), 'string', 'size:9', ], ], [ 'organization_name.prohibited_if' => 'Organization details are unnecessary for personal memberships.', 'tax_id.prohibited_if' => 'Tax ID is only needed for US-based corporate memberships.', ]); Membership::create($request->validated()); return response()->json([ 'message' => 'Membership created successfully' ]); } }米国のメンバーのみの税IDの検証。
カスタムエラーメッセージをクリアします。
membership_type
以上がlaravelでの動的フォーム検証は、plabited_ifを使用していますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。