Rumah >pembangunan bahagian belakang >tutorial php >Kajian awal tentang Smarty, enjin templat dalam PHP

Kajian awal tentang Smarty, enjin templat dalam PHP

王林
王林asal
2023-05-11 17:15:061754semak imbas

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?

  1. Cache Templat

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.

  1. Pelarasan Pembolehubah

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.

  1. Perlindungan skrip merentas tapak

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 .

  1. Sintaks lanjutan

Smarty menyokong sintaks lanjutan dan anda boleh menyesuaikan pelbagai teg dan fungsi untuk memenuhi keperluan khusus anda.

Penggunaan asas Smarty

  1. Memasang Smarty

Mula-mula anda perlu memuat turun Smarty secara setempat, dan kemudian nyahzipnya ke direktori web anda.

  1. Buat fail templat dan fail tersusun

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.

  1. Mencipta objek Smarty

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';
  1. Tetapkan pembolehubah dan paparan fail templat

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!

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