1、通过assign()方法
在index.php文件中:
<?php
namespace app\index\controller;
class Index extends \think\Controller
{
public function index()
{
//单独赋值
$this->assign('siteName','www.php.cn');
//批量赋值
$this->assign([
'name'=>'朱老师',
'lesson'=>'php'
]);
//渲染模板
return $this -> fetch();
}
}
?>
来到模板文件index.html:
<p>网站域名:<span style="color:red">{$siteName}</span></p>
<p>我的姓名:<span style="color:red">{$name}</span></p>
<p>我的课程:<span style="color:red">{$lesson}</span></p>
2、fetch()或display()方法传参赋值
在index.php文件中:
<?php
namespace app\index\controller;
class Index extends \think\Controller
{
public function index()
{
//单独赋值
$this->assign('siteName','www.php.cn');
//批量赋值
//$this->assign([
// 'name'=>'朱老师',
// 'lesson'=>'php'
//]);
//渲染模板
return $this -> fetch('index',[
'name'=>'Peter',
'lesson'=>'php'
]);
return $this -> display('姓名:{$name},课程:{$lesson}',[
'name'=>'Peter',
'lesson'=>'php'
]);
}
}
?>
3、给视图对象添加属性的方式赋值
在index.php文件中:
<?php
namespace app\index\controller;
class Index extends \think\Controller
{
public function index()
{
$this->view->name='朱老师';
$this->view->lesson='JavaScript';
return $this->fetch();
}
}
?>
或者这样:
<?php
namespace app\index\controller;
use think\View;
class Index
{
public function index()
{
View::instance()->name='朱老师';
View::instance()->lesson='HTML5';
return View::instance()->fetch();
}
}
?>
4、用share()方法给模板添加静态变量
在index.php文件中:
<?php
namespace app\index\controller;
use think\View;
class Index
{
public function index()
{
View::instance()->name='朱老师';
View::instance()->lesson='HTML5';
View::share('siteName','php中文网');
return View::instance()->fetch();
}
}
?>
5、用助手函数view()向模板赋值
在index.php文件中:
<?php
namespace app\index\controller;
class Index
{
public function index()
{
return view('index',[
'name'=>'张老师',
'lesson'=>'CSS',
'domain'=>'www.php.cn'
]);
}
}
?>
总结:尽管有多种方式向模板赋值,但在一个项目中,尽可能保持统一的赋值风格。推荐继承控制器类,使用assign()方法,当然,传参赋值也是一个不错的选择,不推荐使用助手函数view()~~
网友评论