Pembolehubah biasa dan pembolehubah terpelihara
1, Pembolehubah biasa
Terdapat dua cara untuk mengisytiharkan pembolehubah biasa.
Yang pertama: Contoh di atas telah digunakan, iaitu, gunakan $smarty->assign('add',$add);
dalam fail index.php. Dalam Penyata fail templat (dalam html), iaitu, {assign var='add' value='value'}
Kodnya adalah seperti berikut:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>test</title> </head> <body> <!--html的注释--> {*smarty模板的注释*} {assign var='add' value='www.php.cn'} 我们网站的网址是:{$add} </body> </html>
Hasil berjalan:
『
『Gunakan: {$add}
Nota: Tatasusunan juga boleh ditakrifkan dan digunakan. Jika tambah yang ditakrifkan di atas ialah tatasusunan satu dimensi, ia boleh digunakan seperti berikut: {$add[2]}, {$add['aa']}, {$add.aa}, dsb.
2, pembolehubah terpelihara
Smarty mempunyai pembolehubah khas (smarty) yang melaluinya anda boleh mengakses beberapa pembolehubah persekitaran dengan mudah. Sama seperti pembolehubah superglobal dalam PHP.
Nota: Apabila menggunakan pembolehubah terpelihara ini: smarty adalah sensitif huruf besar, kita memerlukan huruf kecil smarty
Contoh:
1. Gunakan smarty untuk mengakses tatasusunan superglobal dalam Pembolehubah PHP
:. Dapatkan $_GET {$smarty.get.name} Dapatkan nilai nama dalam get
2. Dapatkan $_POST {$smarty.post.name} Dapatkan nilai nama dalam siaran
3. Dapatkan $_COOKIE {$smarty.cooke.name} Dapatkan nilai nama dalam kuki
Dengan cara yang sama, anda juga boleh mendapatkan $_SERVER, $_ENV dan $_SESSION, dsb.
Nota: Walaupun Smarty menyediakan Ini adalah cara yang lebih mudah untuk mengakses terus pembolehubah superglobal PHP, tetapi ia mesti digunakan dengan berhati-hati. Mengakses terus pembolehubah superglobal merosakkan kod aplikasi asas dan sintaks templat. Amalan terbaik adalah untuk menetapkan pembolehubah yang diperlukan kepada templat daripada PHP dan kemudian menggunakannya.
2.{$ smarty.const.constant name} adalah {$ smarty.const.age}
php yang ditakrifkan sebagai pemalar
run:
IV. Pembolehubah GST
Kembalikan nama templat semasa: {$smarty. templat }Kembalikan objek templat semasa: {$smarty.template_object}
Kembalikan nama direktori semasa: {$smarty.current_dir}