Request Handling & Validation Interview Questions
Comprehensive request handling & validation interview questions and answers for Laravel. Prepare for your next job interview with expert guidance.
Questions Overview
1. What is request handling in Laravel?
Basic2. How do you access request input data?
Basic3. What is Form Request Validation?
Basic4. How do you validate request data in Laravel?
Basic5. What are Laravel's common validation rules?
Basic6. How do you handle file uploads in requests?
Basic7. What are validation error messages?
Basic8. How do you access old input data after validation fails?
Basic9. What is CSRF protection in Laravel?
Basic10. How do you handle JSON requests in Laravel?
Basic11. How do you implement custom validation rules?
Moderate12. How do you handle array validation?
Moderate13. What are conditional validation rules?
Moderate14. How do you implement dependent field validation?
Moderate15. How do you handle validation after database transactions?
Moderate16. How do you implement custom validation messages?
Moderate17. What are validation rule parameters?
Moderate18. How do you handle multiple file uploads validation?
Moderate19. What is implicit validation?
Moderate20. How do you validate unique records with soft deletes?
Moderate21. How do you implement validation rule inheritance?
Advanced22. How do you implement dynamic validation rules?
Advanced23. How do you implement validation rule caching?
Advanced24. How do you implement validation pipelines?
Advanced25. How do you implement cross-request validation?
Advanced26. How do you implement validation rule composition?
Advanced27. How do you implement validation rule versioning?
Advanced28. How do you implement validation rule testing?
Advanced29. How do you implement validation middleware?
Advanced30. How do you implement validation events?
Advanced1. What is request handling in Laravel?
BasicRequest handling in Laravel manages HTTP requests using the Request class. It provides methods to access input data, files, headers, and server variables. Request handling is the foundation of processing user input in Laravel applications.
2. How do you access request input data?
BasicRequest input data can be accessed using methods like $request->input('name'), $request->get('email'), or $request->all(). For specific input types, use $request->query() for GET parameters and $request->post() for POST data.
3. What is Form Request Validation?
BasicForm Request Validation is a custom request class that encapsulates validation logic. Created using 'php artisan make:request'. Contains rules() method for validation rules and authorize() method for authorization checks.
4. How do you validate request data in Laravel?
BasicRequest data can be validated using validate() method, Validator facade, or Form Request classes. Basic syntax: $validated = $request->validate(['field' => 'rule|rule2']). Failed validation redirects back with errors.
5. What are Laravel's common validation rules?
BasicCommon validation rules include required, string, email, min, max, between, unique, exists, regex, date, file, image, and numeric. Rules can be combined using pipe (|) or array syntax.
6. How do you handle file uploads in requests?
BasicFile uploads are handled using $request->file() or $request->hasFile(). Files can be validated using file, image, mimes rules. Use store() or storeAs() methods to save uploaded files.
7. What are validation error messages?
BasicValidation errors are automatically stored in session and can be accessed in views using $errors variable. Custom error messages can be defined in validation rules or language files.
8. How do you access old input data after validation fails?
BasicOld input data is accessible using old() helper function or @old() Blade directive. Data is automatically flashed to session on validation failure. Useful for repopulating forms.
9. What is CSRF protection in Laravel?
BasicCSRF protection prevents cross-site request forgery attacks. Laravel includes @csrf Blade directive for forms. VerifyCsrfToken middleware validates token. Can be disabled for specific routes.
10. How do you handle JSON requests in Laravel?
BasicJSON requests can be handled using $request->json() method. Content-Type should be application/json. Use json() method for responses. APIs typically return JSON responses by default.
11. How do you implement custom validation rules?
ModerateCustom validation rules can be created using 'php artisan make:rule' command. Implement passes() method for validation logic. Can include custom error message. Register in service provider if needed.
12. How do you handle array validation?
ModerateArray validation uses dot notation or * wildcard. Example: 'items.*.id' => 'required|integer'. Can validate nested arrays and specific array keys. Supports array size validation.
13. What are conditional validation rules?
ModerateConditional validation uses sometimes(), required_if, required_unless rules. Can be based on other field values or custom conditions. Supports complex validation scenarios based on input data.
14. How do you implement dependent field validation?
ModerateDependent field validation checks fields based on other field values. Uses required_with, required_without rules or custom validation logic. Can implement complex dependencies between fields.
15. How do you handle validation after database transactions?
ModerateUse after database hooks in Form Requests or custom validation rules. Consider transaction rollback if validation fails. Handle unique rule with database transactions carefully.
16. How do you implement custom validation messages?
ModerateCustom messages can be defined in validation rules array, language files, or Form Request classes. Support placeholders for field names and values. Can be localized for different languages.
17. What are validation rule parameters?
ModerateValidation rules can accept parameters using colon syntax: 'field' => 'size:10'. Multiple parameters use comma separation. Can reference other field values or custom parameters.
18. How do you handle multiple file uploads validation?
ModerateMultiple files validated using array syntax and file rules. Can validate file count, size, type for each file. Support batch processing and individual file validation.
19. What is implicit validation?
ModerateImplicit validation rules (accepted, filled) validate only when field is present. Different from required rules. Useful for optional fields that need specific format when present.
20. How do you validate unique records with soft deletes?
ModerateUnique validation with soft deletes requires custom rule or withoutTrashed() scope. Consider restore scenarios. Handle unique constraints across active and deleted records.
21. How do you implement validation rule inheritance?
AdvancedValidation rules can inherit from base Form Request classes. Use trait for shared rules. Support rule overriding and extension. Handle rule conflicts and dependencies.
22. How do you implement dynamic validation rules?
AdvancedDynamic rules generated based on input or conditions. Use closure rules or rule objects. Support runtime rule modification. Handle complex validation scenarios.
23. How do you implement validation rule caching?
AdvancedCache validation rules for performance. Consider cache invalidation strategies. Handle dynamic rules with caching. Support cache tags and versioning.
24. How do you implement validation pipelines?
AdvancedValidation pipelines process rules sequentially. Support dependent validations. Handle validation state between steps. Implement rollback mechanisms.
25. How do you implement cross-request validation?
AdvancedCross-request validation compares data across multiple requests. Use session or cache for state. Handle race conditions. Support sequential validation steps.
26. How do you implement validation rule composition?
AdvancedCompose complex rules from simple ones. Support rule chaining and grouping. Handle rule dependencies and conflicts. Implement custom rule factories.
27. How do you implement validation rule versioning?
AdvancedVersion validation rules for API compatibility. Support multiple rule versions. Handle rule deprecation and migration. Implement version negotiation.
28. How do you implement validation rule testing?
AdvancedTest validation rules using unit and feature tests. Mock dependencies. Test edge cases and error conditions. Support test data providers.
29. How do you implement validation middleware?
AdvancedCustom validation middleware for route-level validation. Support middleware parameters. Handle validation failure responses. Implement middleware groups.
30. How do you implement validation events?
AdvancedDispatch events before/after validation. Handle validation lifecycle. Support event listeners and subscribers. Implement custom validation events.