smarty模板的数据变量有哪些,又该如何调用?
Mar 08, 2021 am 11:02 AM定义:模板变量
,即在模板中被分配的变量,以及如何使用Smarty
规则在模板中解析变量。
在Smarty
模板中,我们将模板中的变量
分为三类。
PHP分配变量,即利用
assign
方法分配的变量。smarty保留变量,包括
超全局预定义变量
和smarty的内置变量。
自定义变量,用户在模板中去定义变量。
1.PHP分配变量,理论上PHP可以分配任意数据类型给模板进行解析,通常数据其实也就三种:
标量数据:直接使用标记输出的数据。
数组数据:在smarty模板中可以使用下标或者通过"
.
"+下标
来实现。对象数据:在smarty模板中是通过
对象访问符
来实现访问。
<?php require 'smarty/Smarty.class.php'; $smarty=new Smarty(); // $smarty->left_delimiter="<{"; // $smarty->right_delimiter="}>"; $smarty->template_dir = 'templates/'; //实际模板所在目录,如果没有会在根目录下查找 //普通数据 $smarty->assign('hello',"hello world"); //数组 $smarty->assign('arr1',array(1412,14,23,456)); $smarty->assign('arr2',array('name'=>'张三','sex'=>'男')); //对象 class Person{ public $name='陈平安'; public $perr='saber'; } $smarty->assign('object1',new Person()); $smarty->display('model.html'); ?>
<!DOCTYPE html>//模板 model.html <html> <head> <title></title> </head> <body> {$hello}这是templates下面的模板 <br> 这是索引数组:{$arr1[0]}---{$arr1[1]}------{$arr1[2]}<br> 这是索引数组:{$arr1.0}---{$arr1.1}------{$arr1.2}<br> 这是关联数组:{$arr2.name}-----{$arr2.sex}<br> 这是对象:{$object1->name}-----------{$object1->perr}<br> </body> </html>
2.Smarty保留变量:是smarty考虑到用户会需要经常使用的系统变量,或者内部变量。这类变量通常以$smarty开始,然后是各类关键字,多次访问。
GET数据:{$smarty.get.名字}
POST数据:{$smarty.post.名字}
session数据:{$smarty.session.名字}
cookie数据:{$smarty.cookies.名字}
REQUEST数据:{$smarty.request.名字}
server数据:{$smarty.server.大写名字}
时间戳:{$smarty.now}
模板路径:{$smarty.current_dir}
模板名字:{$smarty.template}
配置文件:{$smarty.config.配置名}
<html> <header></header> <body> GET数据:{$smarty.get.name} POST数据:{$smarty.post.name} session数据:{$smarty.session.username} cookie数据:{$smarty.cookies.username} REQUEST数据:{$smarty.request.name} server数据:{$smarty.server.SERVER_NAME} 时间戳:{$smarty.now} 模板路径:{$smarty.current_dir} 模板名字:{$smarty.template} </body> </html>
3.自定义变量:Smarty为了在模板中可以灵活的对数据进行处理,允许设置变量:{assign var='变量名' value='变量值'}。
<html> <header></header> <body> {assign var='name' value='Sun'} {$name} </body> </html>
Atas ialah kandungan terperinci smarty模板的数据变量有哪些,又该如何调用?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel 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

Panduan untuk menggunakan pembolehubah persekitaran Windows 11 dan 10 untuk pemprofilan

Mod ketat untuk pembolehubah dalam PHP7: bagaimana untuk mengurangkan potensi pepijat?

Pengenalan fungsi PHP—is_string(): Semak sama ada pembolehubah ialah rentetan

Apakah pembolehubah contoh dalam Java

Bagaimana untuk mendapatkan pembolehubah daripada kaedah PHP menggunakan Ajax?
![Ralat dalaman: Tidak dapat mencipta direktori sementara [Diselesaikan]](https://img.php.cn/upload/article/000/000/164/168171504798267.png?x-oss-process=image/resize,m_fill,h_207,w_330)
Ralat dalaman: Tidak dapat mencipta direktori sementara [Diselesaikan]

Peta minda sintaks Python: pemahaman mendalam tentang struktur kod

Terangkan kitaran hidup pembolehubah dalam bahasa C
