摘要:自定义函数:<?php //加载smarty模板引擎 require __DIR__ . '/vendor/autoload.php'; //创建smarty对象 $smarty = new Smarty(); //配置目录 $smarty->setTemplateDir(__DIR__ .&nb
自定义函数:
<?php //加载smarty模板引擎 require __DIR__ . '/vendor/autoload.php'; //创建smarty对象 $smarty = new Smarty(); //配置目录 $smarty->setTemplateDir(__DIR__ . '/temp');//设置模板目录 $smarty->display('test3.html');//模板渲染
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> {* 1、模板中定义变量 *} {assign var='username' value='hello'} {$username} <br> {* 定义变量简写 *} {$model = 'test'} {$model} <br> {*2、模板中的分支处理*} {* 判断奇偶数 *} {$data = 23} {if $data is odd} 奇数 {else} 偶数 {/if} <br> {$grade = 80} {if $grade > 80} 优秀 {elseif $grade >= 60} 合格 {else} 不及格 {/if} <br> {* 3、for循环 *} {for $i = 0 to 20 step 3} {$i}, {forelse} 循环错误 {/for} <br> {* 4、while循环 *} {$i = 0} {while ($i <= 10)} {$i++} {/while} <br> {* 5、foreach循环 *} 一维数组:<br> {$arr = ['name'=>'张宏','age'=>'32','sex'=>'男','height'=>'178']} {foreach $arr as $key=>$item} {$key}::{$item}<br> {/foreach} <br> 二维数组:<br> {$arr_2 = [ ['name'=>'张宏','age'=>'32','sex'=>'男','height'=>'178'], ['name'=>'王秀芝','age'=>'22','sex'=>'女','height'=>'160'], ['name'=>'长孙蔓','age'=>'18','sex'=>'女','height'=>'165'], ['name'=>'杨波','age'=>'20','sex'=>'男','height'=>'180'] ]} {* $arr_2 = [] *} {foreach $arr_2 as $k => $v} 姓名:{$v['name']},年龄:{$v['age']},性别:{$v['sex']},身高:{$v['height']}<br> {foreachelse} <h1>没有其他数据</h1> {/foreach} <br> {* 6、直接定义函数 site是形参,可以换成其他变量 *} {function name='func' site='中文网'} hello {$site} {/function} {* 调用自定义函数 *} {call name='func'}<br> {call name='func' site='world'}<br> {* 自定义函数简写 *} {function func22 sites='gunddd'} 你好,简写函数{$sites}。 {/function} {* 调用 *} {func22 sites='http://www.php.cn'} <br> <br> </body> </html>
文件包含(php文件与自定义函数类似,不再重复粘贴,只粘贴主要文件):
{* 导入文件 *} {include file='header.html'} {* 可以将外部导入的文件先存到变量中 assign为文件的变量,在显示外部文件时直接使用文件变量即可。world是向外部文件中传递的变量名,可在外部文件中直接使用$world获取world的值 *} {include file='title.html' assign='title' world='中午哦'} <p>去年,一部《人民的名义》红遍了大江南北,好长一段时间,街头巷尾都在议论这部电视剧,平日从不看电视的我也被感染,居然也追完了。</p> {$title} <p>实话讲,若是从艺术的角度讲,《人民的名义》着实没什么可称道的,这部作品能火的原因,不过真实地揭露了当下社会最让老百姓深恶痛疾的腐败问题。</p> <p>这几年来,国家政府正在以“壮士断腕”的勇气和“零容忍”的态度,坚决惩治腐败分子,在一系列举措下,不少中高级官员纷纷落马。各媒体经常会出现某某官员落马的新闻,居然有几起是被自己老婆举报的情况,看后,深受感触,想起了史书上记载的二千多年前的一位女子的故事。</p> {include file='footer.html'}
模板继承(php文件与自定义函数类似,不再重复粘贴,只粘贴主要文件):
{* 继承layout布局文件 *} {extends file='layout.html'} {* 实例化区块 *} {block name='title'}这里是标题{/block} {block name='nav'} {* 引用布局模板中的内容 *} {$smarty.block.parent} hello title {/block} {block name='content'}这里是内容{/block}
批改老师:韦小宝批改时间:2018-12-19 13:48:38
老师总结:写的很不错哦!弄明白了模板引擎再写项目的时候就简单了一半了!