批改状态:未批改
老师批语:
注意事项:
1. {foreach} 循环:类似原生
2. {volist} 循环:应用广泛,参数多,功能强大
offset 从某条开始(从0开始计数)
length 显示数量
3. {volist name="staff" id="data" mod='2'} id除以mod余数为1(value)显示奇数行
{eq name='mod' value='1'}
empty="数据为空" 数据为空
4. 性别判断
{in name="staff" value="1,2"}
{if $staff.sex == 0}
男
{else /}
女
{/in}
{//123} 单行注释
{/* 多行注释
123
*/}文件位置

<?php
namespace app\index\controller;
use think\Controller;
use app\index\model\Staff;
use think\facade\Request;
class Dome7 extends Controller
{
//测试
function index()
{
return '你好';
}
//循环标签
function demo1()
{
$staffs = Staff::all(function($query){
$query->field(['id','name','sex','age','money']);
// ->where('id','>','255');
});
// dump($staffs);
// halt($staffs);
$this->view->assign('staff',$staffs);
return $this->fetch();
}
//分页查询1
function demo2()
{
// 分页配置
$config = [
'type' => 'bootstrap',
'var_page' => 'page'
];
//分页显示数量
$sum = 4;
//是否显示简单分页
$simple = false;
//用模型获取分页数据
$paginate = Staff::paginate($sum,$simple,$config);
//渲染分页HTML代码
$page = $paginate->render();
//分页数据->模板
$this->view->assign('staff',$paginate);
//分页变量->模板
$this->view->assign('page',$page);
// 渲染
return $this->view->fetch();
}
}点击 "运行实例" 按钮查看在线实例
<?php
namespace app\index\model;
use think\Model;
use think\model\concern\SoftDelete; //导入软删除功能
class Staff extends Model
{
use SoftDelete;
protected $table = 'aaa';
protected $pk = 'id';
//设置删除时间字段,配合软删除功能
protected $deleteTime = 'delete_time';
//设置软删除字段的默认值
protected $defaultSoftDelete = 0;
// 模型获取器
// 获取器 1.sex
protected function getSexAttr($value)
{
$sex = [0=>'男',1=>'女'];
return $sex[$value];
}
// 获取器 2.money
// protected function getMoneyAttr($value,$data)
// {
// return $data['name'].'的工资是:'.$value;
// }
// 获取器 2.money
protected function getMoneyAttr($value,$data)
{
return $value;
}
// 获取器 3.abc(自定义)
protected function getAbcAttr($value,$data)
{
return $data['name'].'的年龄是:'.$data['age'].' ,工资是:'.$data['money'];
}
// 模型修改器
// 模型获取器 1.时间转换为时间戳
protected function setEntryTimeAttr($value)
{
return strtotime($value);
}
// 模型获取器 2.支持第二个参数
protected function setMoneyAttr($value,$data)
{
return $value + $data['age'];
}
//类型转换
protected $type=[
'id' => 'interger',
'sex' => 'interger',
'money' => 'interger',
'age' => 'interger',
];
//自动完成 针对写操作.新增\更新
//相当于设置的默认值
protected $insert = [
'sex' => 0,
'age' => 18,
'money' => 3600
];
//更新
protected $update = ['sex' => 0];
//针对新增与更新 更新一些相同的东西
protected $auto = ['sex' => 0];
//开始当前时间戳 功能
// (也可以在config/database.PHP中开启)
protected $autoWriteTimestamp = true;
//设置更新的字段
protected $createTime = 'create_time';
protected $updateTime = 'update_time';
}点击 "运行实例" 按钮查看在线实例
{load href="/static/bootstrap/css/bootstrap.css" }
<div class="container">
<div class="row">
<h3 class="text-center">员工信息表</h3>
<div class="col-md-2"></div>
<div class="col-md-8">
<table class="table table-bordered text-center">
<tr class="bg-success">
<td>ID</td>
<td>姓名</td>
<td>性别</td>
<td>年龄</td>
<td>工资</td>
</tr>
<!-- {//模板中创建变量获取数据}
{//ssign name="staff" value=":\app\index\model\Staff::all()"}
{//助手函数获取数据}
{//assign name="staff" value=":model('staff')::all()"}
{//foreach $staff as $data}
<tr>
<td>{//$data.id}</td>
<td>{//$data.name}</td>
<td>{//$data.sex}</td>
<td>{//$data.age}</td>
<td>{//$data['money']}</td>
</tr>
{///foreach} -->
{//volist name="staff" id="data" offset="2" length="2"}
{empty name="staff"}
<h2>没有数据</h2>
{else /}
{volist name="staff" id="data" mod='2'}
{eq name='mod' value="1"}
<tr>
<td>{$data.id}</td>
<td>{$data.name}</td>
<td>{$data.sex}</td>
<td>{$data.age}</td>
<td>{$data['money']}</td>
</tr>
{/eq}
{/volist}
{/empty}
</table>
</div>
<div class="col-md-2"></div>
</div>
</div>
{load href="/static/bootstrap/js/jquery-3.2.1.js" }
{load href="/static/bootstrap/js/bootstrap.js" }点击 "运行实例" 按钮查看在线实例
{load href="/static/bootstrap/css/bootstrap.css" }
<div class="container">
<div class="row">
<h3 class="text-center">员工信息表</h3>
<div class="col-md-2"></div>
<div class="col-md-8">
<table class="table table-bordered text-center">
<tr class="bg-success">
<td>ID</td>
<td>姓名</td>
<td>性别</td>
<td>年龄</td>
<td>工资</td>
</tr>
<!-- 第一种分页方式 -->
{foreach $staff as $data}
<tr>
<td>{$data.id}</td>
<td>{$data.name}</td>
<td>{$data.sex}</td>
<td>{$data.age}</td>
<td>{$data['money']}</td>
</tr>
{/foreach}
<!-- 第二种分页方式 -->
{//volist name="staff" id="data" }
<!-- <tr>
<td>{$data.id}</td>
<td>{$data.name}</td>
<td>{$data.sex}</td>
<td>{//$data.age}</td>
<td>
{///between name="data.age" value="0,25" }
很年轻么
{/between}
{///between name="data.age" value="26,40" }
上年纪了
{////between}
{///between name="data.age" value="41,100" }
很大年纪啦
{////between}
</td>
<td>{//$data['money']}</td>
</tr> -->
{///volist}
</table>
<div class="text-center">{$page|raw}</div>
</div>
<div class="col-md-2"></div>
</div>
</div>
{load href="/static/bootstrap/js/jquery-3.2.1.js" }
{load href="/static/bootstrap/js/bootstrap.js" }点击 "运行实例" 按钮查看在线实例
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号