Rumah >rangka kerja php >Laravel >Pembangunan Laravel: Bagaimana untuk menggunakan susun atur templat Laravel Blade?
Laravel ialah rangka kerja pembangunan yang sangat baik berdasarkan PHP. Ia mempunyai kelebihan kerana mudah dipelajari, cekap dan selamat, serta amat disukai oleh pembangun WEB. Antaranya, susun atur templat Laravel Blade adalah fungsi yang sangat praktikal dalam rangka kerja Laravel Artikel ini akan menunjukkan kepada anda cara menggunakan reka letak templat Laravel Blade melalui kes sebenar.
Apakah reka letak templat Blade?
Enjin templat Blade ialah enjin paparan lalai rangka kerja Laravel Berbanding dengan enjin templat sintaks asli PHP, Blade menyokong sintaks yang lebih ringkas dan elegan serta boleh digunakan dengan lebih baik dengan rangka kerja Laravel. Reka letak templat Laravel Blade merujuk kepada membahagikan halaman web kepada gabungan modular kandungan pengepala, ekor, bar sisi dan blok untuk memudahkan pembangunan berasingan dan meningkatkan kecekapan pembangunan.
Dalam Laravel, kita boleh menggunakan perintah artisan untuk menjana templat induk reka letak Langkah-langkah khusus adalah seperti berikut:
php artisan make:layout master
Selepas melaksanakan arahan ini, fail templat induk bernama master.blade.php akan dijana dalam direktori sumber/views/layouts/ projek. Buka fail dan anda boleh melihat bahawa kandungan kod adalah seperti berikut:
<!DOCTYPE html> <html lang="{{ str_replace('_', '-', app()->getLocale()) }}"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>@yield('title')</title> </head> <body> <header> @yield('header') </header> <nav> @yield('nav') </nav> <main> @yield('content') </main> <footer> @yield('footer') </footer> </body> </html>
Kita dapat melihat bahawa fail templat mengandungi blok yang berbeza seperti kepala, ekor, bar navigasi dan badan Menggunakan sintaks templat Blade @. fungsi yield() untuk menduduki ruang Fungsi @yield() di sini mentakrifkan blok templat Kami akan menggunakan fungsi @section() dalam fail paparan lain untuk mengisi blok templat ini pada masa hadapan.
Untuk sebarang fail paparan yang perlu menggunakan reka letak, anda boleh melakukan reka letak dengan mewarisi templat utama. Buka fail paparan dan tambah kod berikut:
@extends('layouts.master')
@extends('layouts.master') di sini bermaksud fail paparan semasa mewarisi daripada susun atur fail templat utama. tuan. Seterusnya, anda boleh mengisi blok templat ini dengan nama blok templat yang ditakrifkan oleh fungsi @yield() Contohnya, anda boleh menambah kod berikut pada fail paparan:
@section('title', '页面标题') @section('header') <h1>头部内容</h1> @endsection @section('nav') <ul> <li><a href="#">导航栏1</a></li> <li><a href="#">导航栏2</a></li> <li><a href="#">导航栏3</a></li> </ul> @endsection @section('content') <p>主体内容</p> @endsection @section('footer') <p>版权信息</p> @endsection
Dalam kod di atas, @section. Fungsi () digunakan untuk mengisi bahagian templat dalam templat utama Contohnya, @section('title', 'page title') digunakan untuk mengisi teg b2386ffb911b14667cb8f0f91ea547a7 Tidak seperti templat HTML standard yang menggunakan pembolehubah untuk pengisian, templat Blade membenarkan kami mewarisi sebahagian daripada kandungan templat lain dan menjadikan pemisahan data lebih jelas.
Selain fungsi @yield() dan fungsi @section(), Laravel juga menyediakan kaedah statik View, yang disyorkan. , langkah-langkah pelaksanaan khusus adalah seperti berikut:
<?php namespace AppHttpControllers; use IlluminateHttpRequest; use IlluminateSupportFacadesView; class HomeController extends Controller { public function index() { $data = [ 'title' => '页面标题', 'header' => '<h1>头部内容</h1>', 'nav' => '<ul> <li><a href="#">导航栏1</a></li> <li><a href="#">导航栏2</a></li> <li><a href="#">导航栏3</a></li> </ul>', 'content' => '<p>主体内容</p>', 'footer' => '<p>版权信息</p>' ]; return View::make('home.index', $data); } }
Dalam kod di atas, kami menggunakan View::make untuk menjana paparan dan menghantar dalam contoh tatasusunan $data sebagai konteks pembolehubah paparan. Dalam tatasusunan ini, kami telah menentukan lima pembolehubah: $title, $header, $nav, $content, $footer, dll., yang digunakan untuk mengisi blok templat yang sepadan dalam templat utama.
Dalam templat Blade, sebagai tambahan kepada @yield() dan @section() untuk mengisi blok templat, kami juga boleh menggunakan kawalan Struktur, seperti @if, @foreach, @for, dsb., untuk melaksanakan logik khusus, pelaksanaan khusus adalah seperti berikut:
@section('content') <div> @foreach ($posts as $post) <h2>{{ $post->title }}</h2> <p>{{ substr($post->content, 0, 100) }}</p> @endforeach </div> @endsection
Dalam kod ini, kami menggunakan pernyataan gelung @foreach untuk melintasi tatasusunan $posts, dan gunakan { { $post->title }} dan {{ substr($post->content, 0, 100) }} untuk mengeluarkan tajuk artikel dan kandungan ringkas.
Ringkasan
Di atas ialah demonstrasi kes praktikal tentang cara menggunakan reka letak templat Laravel Blade Penggunaan reka letak templat Laravel Blade boleh meningkatkan kecekapan pembangunan aplikasi WEB, dan juga menjadikan perniagaan logik dan Pemisahan pandangan lebih jelas. Sudah tentu, sebagai tambahan kepada ini, rangka kerja Laravel mempunyai banyak ciri berkuasa yang patut diterokai.
Atas ialah kandungan terperinci Pembangunan Laravel: Bagaimana untuk menggunakan susun atur templat Laravel Blade?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!