多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
> 变量如果要在模板中使用,就必须先进行模板赋值才可以,但系统变量和配置参数可以不用赋值(我们会在模板章节介绍如何输出) ## 控制器基类的assign方法 ~~~ <?php namespace app\demo\controller; use thinkct\HomeController; class IndexController extends HomeBaseController { public function index() { // 单个变量赋值 $this->assign("hello", "Hello ThinkCT!"); // 多个变量批量赋值 $this->assign([ 'hello' => 'Hello ThinkCT!', 'username' => '老猫' ]); return $this->fetch(':index'); } } ~~~ ## 传入参数方法 控制器基类的`fetch`和`display`方法都可以通过参数传入模版变量,如: fetch方法: ~~~ <?php namespace app\demo\controller; use thinkct\HomeController; class IndexController extends HomeBaseController { public function index() { return $this->fetch(':index',[ 'hello' => 'Hello ThinkCT!', 'username' => '老猫' ]); } } ~~~ display 方法: ~~~ <?php namespace app\demo\controller; use thinkct\HomeController; class IndexController extends HomeBaseController { public function index() { $content = '{$hello}'."\n".'{$username}'; return $this->display($content,[ 'hello' => 'Hello ThinkCT!', 'username' => '老猫' ]); } } ~~~ ## View 类的share方法 此方法支持在任何地方使用进行模板变量赋值,如: ~~~ \think\facade\View::share('public_name', 'this is a name'); // 或者批量赋值 \think\facade\View::share([ 'public_name1' => 'this is a name1', 'public_name2' => 'this is a name2' ]); ~~~ 通过此方法设置的模板变量最后会和上面几种方法赋值的变量合并。 ## 变量输出 通过以上方法赋值后,就可以在模板里使用这些变量,这里演示一下变量的输出,更多变量操作会在模板章节说明; ~~~ <div>{$hello}</div> <div>{$username}</div> ~~~