Bird
Raised Fist0
Laravelframework~20 mins

Available validation rules in Laravel - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Laravel Validation Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
What does the 'required' validation rule do in Laravel?
In Laravel, what is the behavior of the 'required' validation rule when applied to a form input?
AIt checks if the input is a valid email address.
BIt allows the input field to be empty or missing without error.
CIt ensures the input field must be present and not empty.
DIt validates that the input is a numeric value.
Attempts:
2 left
💡 Hint
Think about whether the field can be left blank or missing.
❓ component_behavior
intermediate
2:00remaining
What output does this Laravel validation produce?
Given this validation rule in a Laravel controller:
$request->validate(['age' => 'integer|min:18']);

What happens if the input 'age' is '17'?
AValidation fails because age is less than 18.
BValidation passes because 17 is an integer.
CValidation passes because min rule is ignored for integers.
DValidation fails because age is not a string.
Attempts:
2 left
💡 Hint
Check what the 'min:18' rule means for integers.
📝 Syntax
advanced
2:00remaining
Which validation rule syntax is correct for checking a valid email in Laravel?
Select the correct syntax to validate that an input named 'email' is a valid email address in Laravel.
A'email' => 'required|email'
B'email' => 'email|required'
C'email' => 'email|required|numeric'
D'email' => 'required|email_address'
Attempts:
2 left
💡 Hint
Order matters for readability but not for correctness; check rule names carefully.
🔧 Debug
advanced
2:00remaining
Why does this Laravel validation rule cause an error?
Consider this validation rule:
'username' => 'required|min:3|max'

Why will this cause a validation error?
AThe 'min' rule must come after 'max'.
BThe 'max' rule is missing a value and causes a syntax error.
CThe 'required' rule cannot be combined with 'min' or 'max'.
DThe 'username' field must be numeric for 'min' and 'max' to work.
Attempts:
2 left
💡 Hint
Check if all rules have required parameters.
❓ state_output
expert
2:00remaining
What is the validation result for this Laravel rule with input 'tags'?
Given this validation rule:
'tags' => 'array|min:2'

And the input:
tags = ['php']

What is the validation result?
AValidation passes because 'array' rule ignores 'min'.
BValidation passes because 'min:2' applies only to strings.
CValidation fails because 'tags' is not a string.
DValidation fails because the array has fewer than 2 items.
Attempts:
2 left
💡 Hint
Consider how 'min' works with arrays in Laravel validation.

Practice

(1/5)
1. Which Laravel validation rule ensures a field is not empty and must be present in the input data?
easy
A. required
B. nullable
C. sometimes
D. filled

Solution

  1. Step 1: Understand the required rule

    The required rule means the field must be present and not empty in the input data.
  2. Step 2: Compare with other rules

    nullable allows empty values, sometimes means the field is optional, and filled means if present, it cannot be empty.
  3. Final Answer:

    required -> Option A
  4. Quick Check:

    Field must be present and not empty = required [OK]
Hint: Remember: required means must be there and not empty [OK]
Common Mistakes:
  • Confusing 'nullable' with 'required'
  • Thinking 'sometimes' means required
  • Using 'filled' expecting it to require presence
2. Which of the following is the correct syntax to validate that a field named email must be a valid email address in Laravel?
easy
A. 'email' => 'required|email_address'
B. 'email' => 'required|valid_email'
C. 'email' => 'required|mail'
D. 'email' => 'required|email'

Solution

  1. Step 1: Identify the correct Laravel email validation rule

    Laravel uses email as the rule to check valid email format.
  2. Step 2: Check syntax correctness

    The syntax uses pipe | to separate rules, so 'required|email' is correct.
  3. Final Answer:

    'email' => 'required|email' -> Option D
  4. Quick Check:

    Email validation rule is 'email' [OK]
Hint: Use 'email' rule for email validation, no extra words [OK]
Common Mistakes:
  • Using 'email_address' instead of 'email'
  • Using 'mail' or 'valid_email' which are invalid
  • Forgetting to separate rules with pipe
3. Given the validation rule 'age' => 'required|integer|min:18', what happens if the input is age = 16?
medium
A. Validation passes because 16 is an integer
B. Validation passes because 'min' only applies to strings
C. Validation fails because 16 is less than the minimum 18
D. Validation fails because 16 is not required

Solution

  1. Step 1: Understand the rules applied

    The rules require the field to be present, an integer, and at least 18.
  2. Step 2: Check the input value against rules

    Input 16 is an integer and present, but less than 18, so it fails the min:18 rule.
  3. Final Answer:

    Validation fails because 16 is less than the minimum 18 -> Option C
  4. Quick Check:

    Integer less than min fails validation [OK]
Hint: min applies to numbers too, not just strings [OK]
Common Mistakes:
  • Thinking min only applies to string length
  • Ignoring the min rule when integer is less
  • Assuming integer rule alone is enough
4. What is wrong with this validation rule? 'username' => 'required|min:3|max'
medium
A. The max rule is missing a value
B. The min rule should be min:3,5
C. The required rule cannot be combined with min
D. The pipe separator | is missing

Solution

  1. Step 1: Analyze the max rule syntax

    The max rule requires a value like max:10 to specify the maximum length or number.
  2. Step 2: Identify the error in the rule string

    Here, max is used without a value, which is invalid syntax.
  3. Final Answer:

    The max rule is missing a value -> Option A
  4. Quick Check:

    Rules like max need a value after colon [OK]
Hint: Rules like max and min always need a number after colon [OK]
Common Mistakes:
  • Omitting the value after max or min
  • Using commas inside min rule incorrectly
  • Thinking required conflicts with min or max
5. You want to validate a password field that must be at least 8 characters and be confirmed by a matching password_confirmation field. Which validation rule set is correct?
hard
A. 'password' => 'required|string|min:8|regex:/[a-zA-Z]+[0-9]+/|confirmed'
B. 'password' => 'required|string|min:8|confirmed'
C. 'password' => 'required|min:8|alpha_num|confirmed'
D. 'password' => 'required|string|min:8|confirmed|same:password_confirmation'

Solution

  1. Step 1: Understand the confirmed rule

    The confirmed rule automatically checks for a matching password_confirmation field.
  2. Step 2: Check the rules for password complexity

    required|string|min:8 ensures presence, text type, and minimum length. The confirmed rule handles confirmation.
  3. Step 3: Evaluate other options

    alpha_num restricts to letters and numbers but may exclude symbols; regex is complex and not required here; same is redundant with confirmed.
  4. Final Answer:

    'password' => 'required|string|min:8|confirmed' -> Option B
  5. Quick Check:

    Use confirmed for matching password fields [OK]
Hint: Use 'confirmed' to check matching confirmation field [OK]
Common Mistakes:
  • Using 'same' instead of 'confirmed' for confirmation
  • Overcomplicating with regex when not needed
  • Forgetting to include 'required' or 'min:8'
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard