1. 程式人生 > >Thinkphp中的assign() 和 display()

Thinkphp中的assign() 和 display()

用法 命名規則 根據 thinkphp 模塊名 數組 正常 class detail

說到 $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‘);
------------------------------------------------------------------------------------

原文:https://blog.csdn.net/class__fun/article/details/78171299

Thinkphp中的assign() 和 display()