smarty模板在PHP中用于将原本与HTML代码混杂在一起的PHP代码逻辑分离;smarty是一种PHP写出来的模板引擎,smarty分离了逻辑代码和外在的内容,提供了一种易于管理和使用的方法实现html与PHP代码逻辑分离的效果,导入语法为“require_once('…Smarty.php')”。
本文操作环境:Windows10系统、PHP8.1版、Dell G3电脑
smarty在php中怎么用
Smarty是一个使用PHP写出来的模板引擎,是业界最著名的PHP模板引擎之一。它分离了逻辑代码和外在的内容,提供了一种易于管理和使用的方法,用来将原本与HTML代码混杂在一起PHP代码逻辑分离。
简单的讲,目的就是要使PHP程序员同前端人员分离,使程序员改变程序的逻辑内容不会影响到前端人员的页面设计,前端人员重新修改页面不会影响到程序的程序逻辑,这在多人合作的项目中显的尤为重要。
优点
1、速度:采用Smarty编写的程序可以获得最大速度的提高,这一点是相对于其它的模板引擎技术而言的。
2、编译型:采用Smarty编写的程序在运行时要编译成一个非模板技术的PHP文件,这个文件采用了PHP与HTML混合的方式,在下一次访问模板时将WEB请求直接转换到这个文件中,而不再进行模板重新编译(在源程序没有改动的情况下)
3、缓存技术:Smarty选用的一种缓存技术,它可以将用户最终看到的HTML文件缓存成一个静态的HTML页,当设定Smarty的cache属性为true时,在Smarty设定的cachetime期内将用户的WEB请求直接转换到这个静态的HTML文件中来,这相当于调用一个静态的HTML文件。
4、插件技术:Smarty可以自定义插件。插件实际就是一些自定义的函数。
5、模板中可以使用if/elseif/else/endif。在模板文件使用判断语句可以非常方便的对模板进行格式重排。
smarty安装
composer下载smarty
composer require smarty/smarty
导入smarty,并创建smarty对象
//引入Smarty.class.php require_once('../vendor/smarty/smarty/libs/Smarty.class.php'); $smarty = new Smarty();
smarty基础目录配置
$smarty->setTemplateDir('./templates/'); $smarty->setCompileDir('./templates_c/'); $smarty->setConfigDir('./configs/'); $smarty->setCacheDir('./cache/');
smarty分配变量
$name = 'smarty'; $smarty->assign('name',$name);
tpl模板使用变量
{$name} 、
smarty 调用模板
$smarty->display('index.tpl');
推荐学习:《PHP视频教程》