Thinkphp中的assign() 和 display()

  • 2021-02-28 17:02
  • by 刘管家
  • 4593
  • 0
  • 0
  • assign(),display()

  

  说到 $this->assign()  与 $this->display()想必用过TP框架的都不陌生,那么今天我们就来说说他们的作用及其他用法。

  先说 $this->assign()吧。

  它的作用很简单 ,就是打印出数组。

  举个例子:

<?php
$apple = "苹果";
$this->assign('apple',$apple);
?>

  assign中的第一个参数是在模板取值的时候所使用的变量名, 第二个参数是要传递的值。

<html>
<head>
<title>取值</title>
</head>
<body>
 
     {$apple}
 
</body>
</html>

  这样就可以把值传递到模板中。

  下面说说 $this->display()

  它的作用是把打出来的数据放到对应的模板上。这里面正常来说不需要赋值,因为它会根据命名规则自动寻找对应的模板文件。但总有一些其他情况,那么我们就来说一下其他情况。

一、调用当前模块的其他模板

格式:$this->display('模板名字');

例如:假设当前操作的是Table模块下的 apple , 我们需要调用Table模块下的 orange。

  这样写 $this->display('orange')即可。

二、调用其它模块的操作

格式:$this->display('模块名:模板名')

例如:假设当前操作的是Table模块。我们需要调用 Food模块的 pizza。

  这样写 $this->display('Food:pizza')即可。

三、全路径输出模板

格式:$this->display('路径文件名');

例如:我们输出当前的public目录下的 add.html

  这样写  $this->display('./public/add.html');即可。

四、其他参数方法

  我们想指定模板输出的编码,而不是默认编码,

  可以使用 $this->display('Table:apple','gbk');

  或者模板不是HTML格式的 ,而是XML格式的,

  可以 $this->display('Table:apple','utf-8','text/xml');


注:本文来源: 转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如有侵权行为,请联系我们,我们会及时删除。


评论