Blade Directives Penting Dan Yang Harus Anda Tahu
if blade directive
- @if()
- @elseif()
- @else
- @endif
Simbol @ juga dapat digunakan untuk output dari directives Blade:
{{-- Blade template --}}
@@if()
<!-- HTML output -->
@if()
Anda dapat membuat pernyataan if menggunakan direktif @if, @elseif, @else, dan @endif. directives ini bekerja sama dengan directives PHP yang sesuai.
@if (count($records) === 1)
I have one record!
@elseif (count($records) > 1)
I have multiple records!
@else
I don't have any records!@endif
foreach blade direktif
- @foreach()
- @endforech
Saat melakukan iterasi melalui loop foreach, variabel $loop tersedia di dalam loop. Variabel ini menyediakan akses ke beberapa informasi yang berguna, seperti indeks loop saat ini dan apakah ini adalah iterasi pertama atau terakhir dari loop.
@foreach ($users as $user)
@if ($loop->first)
This is the first iteration.
@endif
@if ($loop->last)
This is the last iteration.
@endif
<p>This is user {{ $user->id }}</p>
@endforeach
csrf blade directive
- directives @csrf digunakan dalam form.
- Ini juga digunakan untuk memvalidasi token dalam aplikasi Laravel.
Setiap kali Anda mendefinisikan form HTML di aplikasi Anda, Anda harus menyertakan field token CSRF tersembunyi di form Anda sehingga middleware yang dilindungi CSRF dapat memvalidasi permintaan Anda. Anda dapat menggunakan @csrf Blade directive untuk menghasilkan field token.
<form method=”POST” action=”/profile”> @csrf…</form>
unless blade directive
Untuk kenyamanan, Blade juga menyediakan @unless directive.
@unless (Auth::check())You are not signed in.@endunless
isset dan empty blade directives
Selain direktif bersyarat yang dijelaskan di atas, direktif @isset dan @empty dapat digunakan sebagai pintasan yang nyaman untuk fungsi PHP masing-masing.
@isset($records)
// $records is defined and is not null…
@endisset@empty($records)
// $records is “empty”…
@endempty
production blade directive
Anda dapat menggunakan @production directive untuk melihat apakah aplikasi Anda berjalan dalam produksi.
@production
// Production specific content…
@endproduction
Atau, Anda dapat menggunakan @env directive untuk menentukan apakah aplikasi Anda berjalan di lingkungan tertentu.
@env('staging')
// The application is running in "staging"...
@endenv@env(['staging', 'production'])
// The application is running in "staging" or "production"...
@endenv
verbatim directive
Jika Anda menampilkan variabel JavaScript di sebagian besar template, Anda dapat membungkus HTML dengan direktif @verbatim sehingga Anda tidak harus mendahului setiap pernyataan gema Blade dengan simbol @.
@verbatim
<div class="container">
Hello, {{ name }}.
</div>
@endverbatim
hasSection blade direktif
@hasSection('navigation')
@endif
Kode di atas memeriksa apakah ada konten di bagian yang diwarisi.
sectionMissing blade directive
@sectionMissing('navigation')
@endif
Kode di atas memeriksa untuk melihat apakah konten bagian tersebut hilang.
switch blade directive
@switch($i)
@case(1)
First case...
@break
@default
@endswitch
Sama seperti pernyataan switch biasa, perintah blade @switch() bekerja dengan cara yang sama.
for loop blade directive
@for ($i = 0; $i < 10; $i++)
The current value is {{ $i }}
@endfor
Direktif blade adalah bentuk pendek dan sederhana yang digunakan Laravel untuk menyederhanakan beberapa fungsi PHP agar kode menjadi sederhana dan mudah dibaca.