Bagaimana untuk menggunakan Blade dengan CakePHP?
CakePHP ialah rangka kerja PHP MVC yang popular, dan Blade ialah salah satu enjin templat yang sangat popular dalam rangka kerja Laravel. Walaupun CakePHP datang dengan enjin templat yang berkuasa, kadangkala kita mungkin mahu menggunakan enjin templat lain untuk menggantikan enjin lalai.
Dalam artikel ini, saya akan memperkenalkan cara menggunakan enjin templat Blade dalam CakePHP 3, dengan harapan dapat membantu beberapa pembangun yang ingin mencuba Blade.
- Pasang Blade
Mula-mula, kita perlu memasang Blade, yang boleh dilakukan melalui Composer. Tambahkan dependensi pada fail composer.json dalam direktori akar projek:
{ "require": { "illuminate/view": "5.8.*" } }
dan kemudian jalankan perintah composer update
dalam terminal untuk memasang dependensi.
- Mengkonfigurasi CakePHP
Seterusnya, kita perlu mengkonfigurasi CakePHP untuk menggunakan enjin templat Blade. Mula-mula, tambah kod berikut dalam fail config/app.php:
'View' => [ 'className' => 'CakeViewView', 'viewPath' => APP . 'Template/', 'layoutPath' => APP . 'Template/Layout/', 'templatePath' => APP . 'Template/', 'cachePath' => CACHE . 'views/', 'helpers' => [ 'Html', 'Form', 'Url' ], 'useRenderCache' => false, 'engine' => [ 'Blade' => [ 'className' => 'CakeBladeBladeEngine', 'options' => [ 'cache_path' => TMP . 'blade_cache', 'view_path' => APP . 'Template/', 'auto_reload' => true ] ] ] ]
Dalam tatasusunan konfigurasi ini, kami menentukan konfigurasi paparan CakePHP dan menambah enjin templat bernama "Blade". Dalam pilihan Blade, kami menentukan laluan cache, laluan lihat dan sama ada untuk memuat semula templat secara automatik.
Seterusnya, kita perlu menambah fail untuk mentakrifkan enjin Blade dalam src/View/BladeEngine.php.
<?php namespace CakeBlade; use CakeViewEngineEngine; use IlluminateViewCompilersBladeCompiler; use IlluminateViewEnginesCompilerEngine; use IlluminateViewFactory; use IlluminateViewFileViewFinder; class BladeEngine extends Engine { public $Factory; public function __construct($view = null, $layout = null) { parent::__construct($view, $layout); $config = CakeCoreConfigure::read('App'); $viewPath = $config['Template']['templatePath']; $cachePath = $config['engine']['Blade']['options']['cache_path']; $this->Factory = new Factory(new FileViewFinder([$viewPath]), new CompilerEngine(new BladeCompiler(new Filesystem, $cachePath))); } public function render($template, $layout = null) { return $this->Factory->make($template, compact('data'))->render(); } }
Dalam kelas ini, kami mentakrifkan kelas BladeEngine, yang mewarisi daripada kelas Enjin dalam CakePHP. Dalam pembina, kita membaca laluan pandangan menggunakan konfigurasi CakePHP dan menyerahkannya kepada pembina Blade supaya Blade boleh mencari fail templat. Selain itu, kami menambah laluan cache untuk meningkatkan prestasi. Dalam fungsi render, kami menggunakan kelas Kilang Blade untuk memaparkan templat.
- Buat fail templat
Sekarang kita telah selesai mengkonfigurasi dan mentakrifkan enjin Blade, kita boleh mula menulis fail templat. Dalam CakePHP, kita boleh mencipta fail templat dalam direktori src/Template/.
Sebagai contoh, kita boleh mencipta templat Blade ringkas dalam src/Template/Pages/home.blade.php:
@extends('Layout.default') @section('content') <div class="jumbotron"> <h1>Welcome to CakeBlade</h1> <p>CakePHP 3 + Blade Template Engine.</p> <p><a class="btn btn-primary btn-lg" href="#" role="button">Learn more</a></p> </div> @endsection
Dalam templat ini, kami menggunakan @extends untuk menentukan reka letak. Kandungan antara @section dan @endsection akan dimasukkan ke dalam arahan @yield('content') reka letak.
- Templat Rendering
Kini, kita boleh membuat templat dalam pengawal dengan memanggil enjin Blade. Sebagai contoh, tambahkan kod berikut dalam PagesController:
public function home() { $this->getViewBuilder()->setClassName('CakeBlade.Blade'); $this->set(compact('data')); $this->render('home'); }
Sebelum memberikan templat, kita perlu menentukan kelas paparan yang digunakan. Kami kemudian menghantar data ke paparan dan menentukan nama fail templat untuk dimuatkan.
- Jalankan ujian
Kini kita boleh melawati halaman dalam penyemak imbas untuk melihat sama ada Blade berfungsi dengan betul. Masukkan nama fail dalam bar alamat, seperti http://localhost/cake_blade/pages/home, dan anda akan melihat templat Blade yang baru anda tulis, yang sama seperti yang kami takrifkan dalam fail templat.
Ringkasan
Dalam artikel ini, kami memperkenalkan cara menggunakan enjin templat Blade dalam CakePHP 3 untuk menggantikan enjin templat lalai. Dengan cara ini, kami boleh membangunkan aplikasi web menggunakan sintaks dan ciri berkuasa yang disediakan oleh Blade. Jika anda sedang mencari enjin templat yang kaya dengan ciri, Blade ialah pilihan yang bagus.
Atas ialah kandungan terperinci Bagaimana untuk menggunakan Blade dengan CakePHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Dalam bab ini, kita akan memahami Pembolehubah Persekitaran, Konfigurasi Umum, Konfigurasi Pangkalan Data dan Konfigurasi E-mel dalam CakePHP.

Alat pembaikan DirectX ialah alat sistem profesional Fungsi utamanya adalah untuk mengesan status DirectX sistem semasa Jika keabnormalan ditemui, ia boleh dibaiki secara langsung. Mungkin terdapat ramai pengguna yang tidak tahu cara menggunakan alat pembaikan DirectX Mari kita lihat tutorial terperinci di bawah. 1. Gunakan perisian alat pembaikan untuk melakukan pengesanan pembaikan. 2. Jika ia menggesa bahawa terdapat masalah tidak normal dalam komponen C++ selepas pembaikan selesai, sila klik butang Batal dan kemudian klik bar menu Alat. 3. Klik butang Pilihan, pilih sambungan, dan klik butang Mulakan Sambungan. 4. Selepas pengembangan selesai, mengesan semula dan membaikinya. 5. Jika masalah masih tidak diselesaikan selepas operasi alat pembaikan selesai, anda boleh cuba menyahpasang dan memasang semula program yang melaporkan ralat.

Bekerja dengan pangkalan data dalam CakePHP adalah sangat mudah. Kami akan memahami operasi CRUD (Buat, Baca, Kemas Kini, Padam) dalam bab ini.

Pengenalan kepada kod status HTTP 525: Fahami definisi dan penggunaan kod status HTTP (HypertextTransferProtocol) 525 bermakna pelayan mempunyai ralat semasa proses jabat tangan SSL, mengakibatkan ketidakupayaan untuk mewujudkan sambungan selamat. Pelayan mengembalikan kod status ini apabila ralat berlaku semasa jabat tangan Keselamatan Lapisan Pengangkutan (TLS). Kod status ini termasuk dalam kategori ralat pelayan dan biasanya menunjukkan konfigurasi pelayan atau masalah persediaan. Apabila pelanggan cuba menyambung ke pelayan melalui HTTPS, pelayan tidak mempunyai

CakePHP ialah rangka kerja sumber terbuka untuk PHP. Ia bertujuan untuk menjadikan pembangunan, penggunaan dan penyelenggaraan aplikasi lebih mudah. CakePHP adalah berdasarkan seni bina seperti MVC yang berkuasa dan mudah difahami. Model, Pandangan dan Pengawal gu

Pengesah boleh dibuat dengan menambah dua baris berikut dalam pengawal.

Untuk bekerja dengan tarikh dan masa dalam cakephp4, kami akan menggunakan kelas FrozenTime yang tersedia.

Dalam bab ini, kita akan mempelajari topik berikut yang berkaitan dengan penghalaan ?
