批改状态:未批改
老师批语:
注意事项
控制器应该与目录同名,否则就是夸目录调用
目录位置

<?php
namespace app\index\controller;
// use think\View;
// use think\facade\View;
use think\Controller;
class Dome6 extends Controller
{
function index()
{
return '你好';
}
//模板渲染
// function index1(View $view)
function index1()
{
$data = '张大哥';
//使用视图类的display()渲染模板(1.依赖注入方式,2.facade静态代理)
// return $view->display($name);
//display相当于模板输出
// return View::display($name);
//模板表达式 以模块下的view为更目录
//fetch()指定一个模本输出内容
//表达式:模块@控制器/操作方法
//可以忽略模块
// return View::fetch('index@index/index1',['data'=>$data]);
//使用控制器中的$view来调用View的fetch()
// return $this->view->fetch('index/index1',['data'=>$data]);
//跳过view
// return $this->fetch('index/index1',['data'=>$data]);
//简写
// return $this->fetch('index1',['data'=>$data]);
// 使用assign()
$this->assign('data',$data);
return $this->fetch();
// 使用助手函数,不依赖任何类
// return view('',['data'=>$data]);
}
//模板赋值
function index2()
{
//模板变量赋值
// $this->view->assign('name','张三');
// $this->view->assign('data','PHP');
//批量模板赋值
// $this->assign(['name'=>'李四','data'=>'前端']);
//对象赋值
$this->view->name='王老五';
$this->view->data='今天周末';
return $this->fetch();
}
//模板过滤替换
function index3()
{
//对象赋值
$this->view->name='王老五';
$this->view->data='今天周末';
return $this->filter(function ($date){
return str_replace('王老五','江小白',$date);
})->fetch();
}
}点击 "运行实例" 按钮查看在线实例
下边是三个小模板
index1.html
<h2>这里是模板<h1>1</h1>的内容输入</h2>
<h3>这是输出的值 : <strong >{$data}</strong></h3>
index2.html
<h2>这里是模板 <span style="color: red"> 2 </span>的内容输出</h2>
<h3>这是 name 输出的值 : <span style="color: red"> {$name} </span></h3>
<h3>这是 data 输出的值 : <span style="color: red"> {$data} </span></h3>
index3.html
<h2>这里是模板 <span style="color: red"> 3 </span>的内容输出</h2>
<h3>这是 name 输出的值 : <span style="color: red"> {$name} </span></h3>
<h3>这是 data 输出的值 : <span style="color: red"> {$data} </span></h3>
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号