Rumah  >  Artikel  >  rangka kerja php  >  Bincangkan penggunaan templat dalam versi Laravel 5.0

Bincangkan penggunaan templat dalam versi Laravel 5.0

PHPz
PHPzasal
2023-04-21 10:12:25577semak imbas

Laravel ialah rangka kerja PHP popular yang menyediakan banyak ciri dan alatan berkuasa untuk membantu membangunkan aplikasi web berkualiti tinggi dengan cepat. Salah satu ciri penting ialah enjin templat, yang memudahkan pembangun membina halaman yang cantik dan boleh digunakan semula. Artikel ini akan meneroka penggunaan templat dalam versi Laravel 5.0 dan memberikan beberapa petua dan cadangan praktikal.

Asas enjin templat Laravel5.0

Laravel5.0 menggunakan enjin templat Blade, yang menyediakan satu siri komponen templat dan sintaks untuk membantu membina halaman yang cantik dengan pantas. Enjin templat Blade mempunyai ciri-ciri berikut:

  1. Sintaks ringkas: Blade menyediakan sintaks ringkas, menjadikan kod templat lebih mudah dibaca dan diselenggara.
  2. Kebolehluasan: Pembangun boleh melanjutkan kefungsian enjin templat Blade melalui arahan tersuai.
  3. Warisan templat sokongan: Blade membenarkan pembangun menggunakan semula reka letak dan gaya halaman melalui warisan templat.

Sintaks enjin templat Laravel 5.0

Sintaks templat bilah ditandakan dengan '{{}}', menunjukkan pembolehubah templat output. Contohnya:

<h1>{{ $title }}</h1>

Dalam templat, kita boleh menggunakan sintaks biasa seperti pernyataan 'if-else', gelung 'foreach' dan 'include' untuk memasukkan templat lain. Contohnya:

@if(count($items) > 0)
    <ul>
    @foreach($items as $item)
        <li>{{ $item }}</li>
    @endforeach
    </ul>
@else
    <p>No items</p>
@endif

@include('partials.footer')

Dalam contoh di atas, pernyataan 'if-else' menyemak sama ada pembolehubah item kosong Jika ia tidak kosong, ia menggunakan gelung 'foreach' untuk melintasi, dan kemudian melepasi pembolehubah keluaran '{{}}' ke dalam HTML. Akhir sekali, templat bernama 'partials.footer' diperkenalkan melalui arahan '@include'.

Struktur kawalan enjin templat Laravel5.0

Enjin templat Blade menyediakan beberapa struktur kawalan untuk pemprosesan logik yang lebih kompleks. Berikut ialah beberapa struktur kawalan praktikal:

  1. @gelung foreach:
@foreach($items as $item)
    <li>{{ $item }}</li>
@endforeach
  1. @untuk gelung:
@for($i = 0; $i < count($items); $i++)
    <li>{{ $items[$i] }}</li>
@endfor
  1. @jika syarat:
@if(count($items))
    {{ $items[0] }}
@endif
  1. @kecuali syarat:
@unless(count($items))
    <p>No items found!</p>
@endunless
  1. @include template mengandungi:
@include('partials.header')
  1. @melanjutkan warisan templat:
@extends('layouts.master')

@section('content')
    <p>This is the body.</p>
@endsection

Dalam contoh di atas, '@extends' menentukan reka letak yang diwarisi oleh templat, '@section ' Mentakrifkan blok kandungan dalam templat. Blok kandungan dalam templat induk dipaparkan dalam templat anak dengan menggunakan arahan '@yield'.

Warisan susun atur templat Laravel 5.0

Enjin templat Blade membenarkan pembangun menggunakan warisan reka letak pada halaman reka letak. Dengan mentakrifkan susun atur utama (dipanggil Susun Atur Induk) dan subsusun atur (dipanggil Susun Atur Kanak-kanak), kita boleh memanjangkan reka letak utama dalam reka letak kecil dan mentakrifkan blok kandungan untuk pelbagai bahagian. Contoh berikut menunjukkan cara membuat warisan susun atur:

  1. Susun atur utama
<!-- resources/views/layouts/master.blade.php -->
<!DOCTYPE html>
<html>
    <head>
        <title>@yield('title')</title>
        <link href="/css/app.css" rel="stylesheet">
    </head>
    <body>
        @yield('content')
    </body>
</html>
  1. Susun atur anak
<!-- resources/views/layouts/child.blade.php -->
@extends('layouts.master')

@section('title', 'My Home Page')

@section('content')
    <p>This will be displayed in the body.</p>
@endsection

dalam Dalam contoh di atas, reka letak kecil mewarisi reka letak utama dan mentakrifkan bahagian yang dipanggil 'kandungan'. Dengan menggunakan arahan '@yield' dalam susun atur utama, kami boleh menentukan kedudukan dan kandungan bahagian tersebut. Dalam susun atur kecil, gunakan arahan '@section' untuk mengisi kandungan bahagian tersebut.

Ralat pengendalian templat Laravel5.0

Pengendalian ralat sangat penting semasa membangunkan aplikasi web. Melalui enjin templat Laravel5.0, kami boleh mengendalikan ralat pada halaman dengan mudah. Berikut ialah beberapa petua pengendalian ralat yang berguna:

  1. Semak sama ada pembolehubah wujud:
{{ $foo or 'default' }}

Dalam contoh di atas, ia akan menunjukkan jika pembolehubah $foo tidak ditentukan Nilai lalai ialah 'lalai'.

  1. Semak sama ada ungkapan itu benar:
{{ $foo ? 'yes' : 'no' }}

Dalam contoh di atas, jika pembolehubah $foo adalah benar, ia memaparkan 'ya', jika tidak ia memaparkan 'tidak'.

  1. Jika sesetengah pembolehubah tidak ditentukan, gunakan nilai lalai:
{{ $foo or 'default' }}

Dalam contoh di atas, jika pembolehubah $foo tidak ditentukan, nilai lalai akan digunakan ' lalai'.

  1. Semak ralat borang:
@if(count($errors))
    <div class="alert alert-danger">
        <ul>
        @foreach($errors->all() as $error)
            <li>{{ $error }}</li>
        @endforeach
        </ul>
    </div>
@endif

Dalam contoh di atas, gunakan pernyataan @if untuk menyemak sama ada pembolehubah $errors kosong. Jika terdapat ralat, mesej ralat akan dikeluarkan melalui arahan '@foreach'.

  1. Semak URL semasa dan tambah kelas CSS:
<li class="{{ Request::is(&#39;home&#39;) ? &#39;active&#39; : &#39;&#39; }}">
    <a href="{{ url(&#39;home&#39;) }}">Home</a>
</li>

Dalam contoh di atas, gunakan kaedah 'Request::is()' untuk menyemak sama ada URL semasa ialah 'rumah' dan jika ya, tambahkan kelas CSS 'aktif'.

Ringkasan

Dalam Laravel5.0, enjin templat ialah ciri yang sangat penting, yang menyediakan alat mudah untuk membangunkan aplikasi web berskala besar. Dalam artikel ini, kami memperkenalkan sintaks asas dan teknik biasa enjin templat Blade. Jika anda baru mula mempelajari Laravel5.0, kami amat mengesyorkan agar anda mempelajari dan mengamalkan enjin templat Blade secara mendalam. Ia akan menjadikan anda lebih mudah untuk digunakan, lebih pantas dan lebih fleksibel apabila membangunkan aplikasi web.

Atas ialah kandungan terperinci Bincangkan penggunaan templat dalam versi Laravel 5.0. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn