Blade adalah suatu templating engine bawaan Laravel yang berfungsi untuk menyederhanakan suatu syntax dengan menerjemahkan syntax php atau html , dengan blade ini code kita lebih terstruktur berbeda dengan php apabila digabungkan dengan html terlihat acak - acakan.
Agar kita dapat menggunakan blade , pada setiap file harus menggunakan extensi blade. Misalnya biasanya kita membuat index.php ubah menjadi index.blade.php.
Contoh penggunaan blade
Echo Data
If Statement
Looping
Penulisan Komentar
Misalnya anda ingin membuat layout yang akan dipakai oleh beberapa view. Buat sebuah view di
layout.blade.php
Sumber : http://riefsoft.blogspot.co.id/2015/02/blade-templating-pada-laravel.html
Agar kita dapat menggunakan blade , pada setiap file harus menggunakan extensi blade. Misalnya biasanya kita membuat index.php ubah menjadi index.blade.php.
Contoh penggunaan blade
{{ 'nama saya adalah : '.$name }}
Kode di atas pada php sama sengan<?php echo 'nama saya adalah : '.$name; ?>
Bagaimana lebih simple blade kan ? namun ada beberapa kelemahan salah satunya yang saya tahu blade tidak bisa mendeklarasikan variable , contoh $name = 'Udin';
Jadi untuk mendeklarasikan variable tetap menggunakan tag PHP <? php $name='Udin' ?> .
Macam Syntax Blade
Blade pada Laravel memungkinkan kita untuk memisahkan layout, echo data, melakukan looping, menggunakan statement if - else, include view.Echo Data
Woy , {{{ $nama }}}. Sekarang Tanggal {{date('d/m/Y)}}
Echo Data dengan aman (escape.html) Woy lo {{{ $nama }}} minta duit !
Cek data sebelum menampilkan{{{ isset($nama) ? $nama : 'Udin' }}}
{{{ $nama or 'Udin' }}}
2 Kode di atas bila diartikan cek variabel nama jika ada tampilkan namanya kalo tidak tampilkan 'Udin'.If Statement
@if (count($pesan) === 1)
kamu dapat pesan
@elseif (count($pesan) > 1)
Cie kamu dapat pesan banyak euy !!
@else
Kasian kamu tidak dapat pesan
@endif
@unless (Auth::check()) Kamu belum login @endunless
unless
kebalikan dari if. pada unless dijalankan jika kondisi tidak terpenuhiLooping
@for ($i = 1; $i < 10; $i++)
{{ $i }}
@endfor
@forelse($mahasiswa as $data)
<li>{{ $user->nama }}</li>
@empty
Tidak ada mahasiswa
@endforelse
Jika ada isi dari $mahasiswa tampilkan 'data' jika kosong tampilkan pesan 'tidak ada mahasiswa' @while (true)
Tulisan ini akan diulang ulang sampai akhir zaman
@endwhile
Menggunakan Include @include('folder.view')
include dengan parsing parameter @include('folder.view', array('nama'=>'uink'))
Include / mamasukan view dari view lain, dimana anda ingin menampilkannya cukup @include saja.Penulisan Komentar
{{-- ini komentar tidak akan di render html / tidak akan tampil --}}Menggunakan Layout
Misalnya anda ingin membuat layout yang akan dipakai oleh beberapa view. Buat sebuah view di
app/views/
dengan nama layout.blade.php
layout.blade.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>my app</title>
</head>
<body>
@yield('content')
</body>
</html>
pada kode diatas kita melihat hal yang aneh yaitu @yield('content')
. itu adalah view yang akan ditampilkan jika memanggil layout ini dengan mengextends content
. tulisan content
bisa diganti dengan apa saja terserah anda. Lalu buat sebuah view pada app/views/user/
dengan nama user.blade.php
isi nya sebagai berikut :@extends('layout')
@section('content')
<p>Tulisan ini diletakan di dalam content</p>
@stop
Penjelasan :@extends('layout')
berarti view ini menggunakan layout dari app/views/layout$section('content')
berarti view ini diletakan ditempat dimana ada perintah@yield('content')
pada layout terkait@stop
yang ditampilkan cukup sampai disitu.
Sumber : http://riefsoft.blogspot.co.id/2015/02/blade-templating-pada-laravel.html
Tidak ada komentar:
Posting Komentar