Kini, pembangunan laman web tidak dapat dipisahkan daripada komponen penting - enjin templat. Enjin templat merujuk kepada alat yang menggabungkan templat halaman dan data untuk menjana kod HTML dengan format tertentu. Dalam pelbagai rangka kerja pembangunan laman web, enjin templat merupakan komponen penting, kerana enjin templat boleh mengurangkan pertindihan kod dan meningkatkan dinamik halaman dengan banyak. Salah satu enjin templat yang paling biasa dan popular ialah Smarty.
Smarty ialah enjin templat DSL (Bahasa Khusus Domain) yang dibangunkan berdasarkan bahasa PHP Ia adalah pengganti untuk enjin templat PHP asli. Smarty mempunyai ciri seperti caching templat, pelarasan pembolehubah, perlindungan skrip merentas tapak dan sintaks lanjutan, dan digunakan secara meluas dalam pembangunan tapak web. Smarty ialah enjin templat sumber terbuka, jadi anda bebas menggunakannya di mana-mana sahaja. Smarty boleh digunakan bukan sahaja dalam reka bentuk web PHP, tetapi juga dalam persekitaran lain.
Mengapa memilih enjin templat Smarty?
Smarty menyimpan fail templat yang disusun melalui caching, sekali gus mempercepatkan pemprosesan fail templat. Smarty akan menyemak secara automatik sama ada fail templat telah dikemas kini. Jika fail templat berubah, ia akan menjana semula fail templat yang disusun.
Smarty membenarkan pembangun menggunakan pelaras pembolehubah untuk mengendalikan jenis data dan format pembolehubah. Contohnya, dalam fail templat, anda boleh menggunakan {$var|upper} untuk menukar semua aksara dalam pembolehubah $var kepada aksara besar. Smarty juga menyediakan ratusan pengawal selia boleh ubah untuk memenuhi pelbagai keperluan anda.
Smarty mendayakan perlindungan skrip merentas tapak (Perlindungan XSS) secara lalai, yang boleh menukar kandungan statik secara automatik ke dalam format HTML untuk mengelakkan serangan berniat jahat .
Smarty menyokong sintaks lanjutan dan anda boleh menyesuaikan pelbagai teg dan fungsi untuk memenuhi keperluan khusus anda.
Penggunaan asas Smarty
Mula-mula anda perlu memuat turun Smarty secara setempat, dan kemudian nyahzipnya ke direktori web anda.
Mula-mula anda perlu mencipta fail templat, nama fail biasanya berakhir dengan .tpl. Pada masa yang sama, Smarty juga memerlukan direktori untuk menyimpan fail yang disusun. Direktori ini perlu ditetapkan kepada direktori templates_c di bawah direktori Smarty. Disimpan dalam direktori ini adalah fail templat yang disusun.
Pertama, anda perlu memuatkan perpustakaan kelas Smarty dalam kod PHP anda.
require_once('Smarty.class.php');
Kemudian, anda perlu mencipta objek Smarty dan menetapkan pelbagai parameter dan pilihan Smarty.
$smarty = new Smarty(); $smarty->template_dir = '/path/to/templates'; $smarty->compile_dir = '/path/to/compile'; $smarty->cache_dir = '/path/to/cache';
Dalam aplikasi web, anda biasanya perlu mendapatkan data daripada pangkalan data atau tempat lain, dan kemudian memaparkan data ini dalam templat tengah. Anda boleh menetapkan pembolehubah PHP kepada pembolehubah Smarty menggunakan kaedah $smarty->assign().
$smarty->assign('title', 'My Page Title'); $smarty->assign('content', 'This is the body of my page.');
Kemudian, anda perlu menggunakan kaedah paparan() Smarty untuk memaparkan fail templat.
$smarty->display('mypage.tpl');
Dalam mypage.tpl, anda boleh menggunakan pelbagai teg templat Smarty untuk memaparkan pembolehubah dan logik anda. Berikut ialah contoh:
<html> <head> <title>{$title}</title> </head> <body> <div>{$content|nl2br}</div> </body> </html>
Contoh di atas memaparkan pembolehubah $title dan $content yang diberikan daripada PHP dalam halaman HTML.
Ringkasan
Enjin templat Smarty sangat penting untuk pembangunan laman web, terutamanya dalam pembangunan aplikasi berskala besar Bagi menjimatkan masa dan kos pembangunan, Smarty telah menjadi enjin templat yang paling berkesan di satu daripada teknologi. Smarty bukan sekadar alat enjin templat, ia juga telah menjadi salah satu alat PHP yang paling praktikal dan biasa. Pada masa hadapan, dengan pembangunan Internet dan bahasa pengaturcaraan PHP, enjin templat Smarty akan menjadi lebih berkuasa dan popular.
Atas ialah kandungan terperinci Kajian awal tentang Smarty, enjin templat dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!