Bird
Raised Fist0
Laravelframework~5 mins

Blade template syntax in Laravel - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is Blade in Laravel?
Blade is Laravel's simple, yet powerful templating engine that helps you write HTML templates with embedded PHP code using clean and readable syntax.
Click to reveal answer
beginner
How do you output a variable safely in Blade?
Use double curly braces like {{ $variable }}. This escapes HTML to prevent security issues like XSS.
Click to reveal answer
beginner
How do you write an if-else condition in Blade?
Use directives: @if(condition) ... @elseif(condition) ... @else ... @endif.
Click to reveal answer
beginner
What Blade directive is used to loop over an array or collection?
Use @foreach($items as $item) ... @endforeach to loop through each item.
Click to reveal answer
beginner
How do you include one Blade template inside another?
Use the @include('view.name') directive to insert one template inside another for reusability.
Click to reveal answer
Which Blade syntax outputs a variable with HTML escaped?
A<% $variable %>
B{!! $variable !!}
C@php echo $variable; @endphp
D{{ $variable }}
How do you start a Blade loop over a list called $users?
A@for($users as $user)
B@loop($users)
C@foreach($users as $user)
D@while($users)
Which directive ends an if statement in Blade?
A@closeif
B@endif
C@end
D@endcondition
How do you include a Blade template named 'header'?
A@include('header')
B@insert('header')
C@import('header')
D@embed('header')
What does {!! $variable !!} do in Blade?
AOutputs raw HTML without escaping
BEscapes HTML and outputs safely
CComments out the variable
DThrows an error
Explain how to write conditional statements in Blade templates.
Think about how you check conditions in normal PHP but with Blade directives.
You got /4 concepts.
    Describe how to safely display user input in a Blade template and why it matters.
    Consider what happens if user input contains HTML or scripts.
    You got /4 concepts.

      Practice

      (1/5)
      1. Which Blade syntax is used to safely display a variable's value in a view?
      easy
      A. Using PHP echo tags like
      B. Using single curly braces like { $variable }
      C. Using double curly braces like {{ $variable }}
      D. Using square brackets like [ $variable ]

      Solution

      1. Step 1: Identify Blade syntax for output

        Blade uses double curly braces {{ }} to display variables safely by escaping HTML.
      2. Step 2: Compare options

        Only Using double curly braces like {{ $variable }} uses {{ $variable }}, which is the correct Blade syntax.
      3. Final Answer:

        Using double curly braces like {{ $variable }} -> Option C
      4. Quick Check:

        Safe variable display = {{ $variable }} [OK]
      Hint: Remember: {{ }} is for safe variable output in Blade [OK]
      Common Mistakes:
      • Using single braces which is invalid in Blade
      • Using raw PHP echo instead of Blade syntax
      • Confusing square brackets with Blade syntax
      2. Which of the following is the correct Blade directive to start a conditional statement?
      easy
      A. @if(condition)
      B. #if(condition)
      C. if(condition):
      D. @@if(condition)

      Solution

      1. Step 1: Recall Blade directive syntax

        Blade uses directives starting with @ for control structures like conditionals.
      2. Step 2: Identify correct conditional start

        The correct syntax to start an if statement is @if(condition).
      3. Final Answer:

        @if(condition) -> Option A
      4. Quick Check:

        Blade if start = @if(condition) [OK]
      Hint: Blade directives always start with @ symbol [OK]
      Common Mistakes:
      • Using # instead of @ for directives
      • Using raw PHP if syntax inside Blade
      • Double @ signs which are for escaping
      3. What will be the output of this Blade snippet if $name = 'Alice'?
      <p>Hello, {{ $name }}!</p>
      <p>@if($name == 'Alice')
        Welcome back! 
      @endif</p>
      medium
      A. Syntax error due to missing @endif
      B.

      Hello, Alice!

      C.

      Hello, {{ $name }}!

      Welcome back!

      D.

      Hello, Alice!

      Welcome back!

      Solution

      1. Step 1: Evaluate variable output

        The {{ $name }} outputs 'Alice' safely inside the first paragraph.
      2. Step 2: Evaluate conditional block

        The condition $name == 'Alice' is true, so 'Welcome back!' is shown inside the second paragraph.
      3. Final Answer:

        <p>Hello, Alice!</p> <p>Welcome back!</p> -> Option D
      4. Quick Check:

        Variable and if true = output text [OK]
      Hint: If condition true, content inside @if shows [OK]
      Common Mistakes:
      • Thinking Blade outputs raw variable syntax
      • Missing @endif causing syntax errors
      • Ignoring condition result and outputting nothing
      4. Identify the error in this Blade template snippet:
      @foreach($items as $item)
        <p>{{ $item }}</p>
      @endforeachd
      medium
      A. The variable $item should be escaped with triple braces
      B. The closing directive should be @endforeach, not @endforeachd
      C. The loop variable should be $items, not $item
      D. Missing semicolon after {{ $item }}

      Solution

      1. Step 1: Check foreach directive syntax

        The correct closing directive for a foreach loop is @endforeach.
      2. Step 2: Identify typo in closing directive

        The snippet uses @endforeachd which is invalid and causes a syntax error.
      3. Final Answer:

        The closing directive should be @endforeach, not @endforeachd -> Option B
      4. Quick Check:

        Correct directive spelling = @endforeach [OK]
      Hint: Check directive spelling carefully, no extra letters [OK]
      Common Mistakes:
      • Adding extra letters to Blade directives
      • Thinking variables need semicolons in Blade
      • Confusing loop variable names
      5. You want to display a list of users with their emails, but only if the email is verified. Which Blade snippet correctly does this? A)
      @foreach($users as $user)
        @if($user->email_verified)
          <p>{{ $user->name }} - {{ $user->email }}</p>
        @endif
      @endforeach
      B)
      @foreach($users as $user)
        @if($user[email_verified])
          <p>{{ $user->name }} - {{ $user->email }}</p>
        @endif
      @endforeach
      C)
      @foreach($users as $user)
        @if($user->email_verified == true
          <p>{{ $user->name }} - {{ $user->email }}</p>
        @endif
      @endforeach
      D)
      @foreach($users as $user)
        @if($user->email_verified = true)
          <p>{{ $user->name }} - {{ $user->email }}</p>
        @endif
      @endforeach
      hard
      A. Option A
      B. Option B
      C. Option C
      D. Option D

      Solution

      1. Step 1: Identify correct conditional syntax for object property

        Blade @if treats object boolean properties like $user->email_verified as truthy if verified.
      2. Step 2: Evaluate each snippet's logic and syntax

        Snippet A with @if($user->email_verified) correctly shows only verified users.
        Snippet B uses array syntax $user[email_verified] invalid on objects.
        Snippet C with @if($user->email_verified == true has syntax error (missing closing )).
        Snippet D uses = true (assignment), always true, shows all users.
      3. Final Answer:

        Option A -> Option A
      4. Quick Check:

        Object property truthy check [OK]
      Hint: Use == for comparison, not = which assigns [OK]
      Common Mistakes:
      • Using = instead of == in conditions
      • Using array syntax on objects
      • Forgetting closing parenthesis in @if conditions
      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