全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

ThinkPHP 模板引擎使用详解

ThinkPHP 内置的模板引擎来定义模板文件,以及使用加载文件、模板布局和模板继承等高级功能。

每个模板文件在执行过程中都会生成一个编译后的缓存文件,其实就是一个可以运行的 PHP 文件。

引用自 http://www.kancloud.cn/manual/thinkphp5/118122

PHP

/*index/controller/example.php*/
 
use think\Controller;
 
class test extends Index {
 
  public function template (){
    $name = 'Jerry';
    $allName = [
      0 => "Jerry", 
      1 => "Tom"
    ];
 
    $this->assign('nameA',$name);
    $this->assign('allName',$allName);
 
    return $this->fetch('example');
  }
}

 
HTML

/*index/view/example.html*/
 
<span>{$nameA}</span>
 
{volist name="allName" id="vo"}
 
  <p data-sub="{$key}" data-index="{$i}">{$vo}</p>
 
{/volist}
 
 
Result

<br /><span>Jerry</span>
 
<p data-sub="0" data-index="1">Jerry</p>
 
<p data-sub="1" data-index="2">Tom</p>
 
 

这样 ThinkPHP 便完成了对页面的解析工作,其中涉及到 模板实例化、定位、赋值、渲染及标签的使用。

视图实例化

暂无

模板赋值

显然在在模板中直接使用 $name 是找不到该变量的。必须使用 assign 方法对模板赋值。在执行渲染输出函数前, assign 方法使 函数内部变量与模板变量建立起映射关系。

$this->assign('name',$name);
$this->assign('allName',$allName);
 

通过赋值之后,便可以在模板文件中使用 {$nameA} 来输出该变量了。

模板渲染

当数据已经准备好渲染到页面上,还需要指定 html 文件作为渲染模板,为当前函数执行 fetch 方法时候传入 example 参数。 

return $this->fetch('example');

模板标签

在模板文件中使用内置标签可以帮助我们在模板中循环、判断变量。它以一对花括号 {tag} {/tag} 作为开标签和闭标签。 { 与 } 之间必须紧跟标签属性或值,存在 空格 和 换行 都不能在渲染时被解析。

volist 标签就是内置标签中的其中一个,通常用来循环某个数组变量。

{volist name="allName" id="vo"}
 
  <p data-sub="{$key}" data-index="{$i}">{$vo}</p>
 
{/volist}

allName 是通过模板赋值的变量 ,现在可以在模板上直接使用了,显然它是一个数组, volist 标签对它做了循环操作。

volist 标签常用的一些属性:

prop name id
key 数组名 当前元素
value allName vo

隐藏在 volist 中的有几个内部变量 {$key} {$i} ,分别代表了 数组下标 和 循环次数 。

内置标签

与 volist 一样好用的内置标签还有很多:

<notempty name=""></notempty> //判断数据是否不为空 不为空则执行


# thinkphp模板引擎  # thinkphp的模板引擎  # thinkphp模板引擎原理  # 让ThinkPHP的模板引擎达到最佳效率的方法详解  # thinkPHP模板引擎用法示例  # ThinkPHP在Cli模式下使用模板引擎的方法  # ThinkPHP使用smarty模板引擎的方法  # ThinkPHP模板引擎之导入资源文件方法详解  # 为空  # 暂无  # 都不  # 找不到  # 它是  # 能在  # 便可  # 有几个  # 还需要  # 建立起  # 其中一个  # 涉及到  # 好用  # 可以帮助  # 对它  # 还有很多  # 它以  # 过程中  # 换行  # 完成了 


相关文章: 如何设计高效校园网站?  建站主机SSH密钥生成步骤及常见问题解答?  自助网站制作软件,个人如何自助建网站?  如何通过多用户协作模板快速搭建高效企业网站?  个人网站制作流程图片大全,个人网站如何注销?  如何自定义建站之星网站的导航菜单样式?  制作网站的基本流程,设计网站的软件是什么?  江苏网站制作公司有哪些,江苏书法考级官方网站?  视频网站制作教程,怎么样制作优酷网的小视频?  如何实现建站之星域名转发设置?  齐河建站公司:营销型网站建设与SEO优化双核驱动策略  建站之星如何实现五合一智能建站与营销推广?  如何选择香港主机高效搭建外贸独立站?  制作网站哪家好,cc、.co、.cm哪个域名更适合做网站?  linux top下的 minerd 木马清除方法  微信小程序 五星评分(包括半颗星评分)实例代码  沈阳制作网站公司排名,沈阳装饰协会官方网站?  上海网站制作网站建设公司,建筑电工证网上查询系统入口?  手机怎么制作网站教程步骤,手机怎么做自己的网页链接?  如何在Tomcat中配置并部署网站项目?  招贴海报怎么做,什么是海报招贴?  专业网站设计制作公司,如何制作一个企业网站,建设网站的基本步骤有哪些?  如何通过VPS建站实现广告与增值服务盈利?  无锡营销型网站制作公司,无锡网选车牌流程?  北京网站制作的公司有哪些,北京白云观官方网站?  建站OpenVZ教程与优化策略:配置指南与性能提升  广平建站公司哪家专业可靠?如何选择?  深圳网站制作的公司有哪些,dido官方网站?  广州顶尖建站服务:企业官网建设与SEO优化一体化方案  如何通过商城自助建站源码实现零基础高效建站?  胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?  较简单的网站制作软件有哪些,手机版网页制作用什么软件?  如何快速选择适合个人网站的云服务器配置?  平台云上自助建站如何快速打造专业网站?  定制建站价位费用解析与套餐推荐全攻略  建站org新手必看:2024最新搭建流程与模板选择技巧  如何做静态网页,sublimetext3.0制作静态网页?  IOS倒计时设置UIButton标题title的抖动问题  如何零基础开发自助建站系统?完整教程解析  如何通过万网虚拟主机快速搭建网站?  宝塔新建站点为何无法访问?如何排查?  如何高效搭建专业期货交易平台网站?  如何在宝塔面板创建新站点?  如何在阿里云完成域名注册与建站?  网站建设制作、微信公众号,公明人民医院怎么在网上预约?  建站DNS解析失败?如何正确配置域名服务器?  购物网站制作公司有哪些,哪个购物网站比较好?  如何快速搭建自助建站会员专属系统?  香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化  如何选择适配移动端的WAP自助建站平台? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。