Smarty的变量分为三种,PHP分配变量,配置文件变量、Smarty自带变量
1.PHP分配变量:从PHP文件自定义的变量分配到模板文件里
普通变量
$_title = '标题'; //PHP文件里的变量 $_smarty->assign('title',$_title);//通过Smarty分配到模板里'title'表示模板里的变量 {$title} //这是模板里的变量,对应着PHP里的变量
数组变量
$_array = array('周鸿祎','马云','马化腾','李彦宏'); //普通数字下标数组 $_smarty->assign('array',$_array); {$array[0]} //直接引用对应的下标即可 $_array = array('360'=>'周鸿祎','taobao'=>'马云','qq'=>'马化腾','baidu'=>'李彦宏'); $_smarty->assign('array',$_array); //字符串下标 {$array.360} $_array = array( array('安全浏览器','安全卫士'), array('淘宝','阿里巴巴'), array('拍拍网','腾讯网'), array('百度搜索','贴吧') ); $_smarty->assign('array',$_array); //数组中的数组 {$array[1][1]} //二维方式获取
对象
class Computer { public function _run() { return '运行'; } } $_smarty->assign('computer',new Computer()); //传递一个对象 {$computer->_run()}
PS:当然在实际用途中,可能会遇到对象里包含数据,数组里包含对象的用法。
模板变量运算
$_smarty->assign('x',100); $_smarty->assign('y',200);
{$x+$y} //可以直接在模板中运算
2.配置文件变量:从配置文件分配的变量到模板文件里
//设置配置文件的目录
$_smarty->config_dir = ROOT_PATH.'/configs/';
//在configs目录创建config.conf文件,编写键值对变量
webname=兰亭楼 wedaddress=http://www.lantinglou.com
//在模板文件中引入配置文件
{config_load file='config.conf'}
3.Smarty保留变量:模板自带的变量
超级全局变量:$_GET['a'];//{$smarty.get.a} 系统变量:{$smarty.server.SERVER_ADMIN} 常量:define('NAME','dell'); //{$smarty.const.NAME} 系统常量:{$smarty.const.__FILE__} 配置文件:{$smarty.config.webname}
最新评论