批改状态:未批改
老师批语:
使用foreach和volist标签分别实现模板数据的分页显示:
//循环标签
public function demo1()
{
$staffs = StaffModel::all(function($query){
$query->field(['id','name','sex','age','phone_number']);
// ->where('age','<',10);
});
// halt($staffs);=====dump($staffs);exit();
// 模板赋值
$this->view->assign('staffs',$staffs);
//渲染模板
return $this->view->fetch();
}
//分页查询
public function demo2()
{
//分页配置
$config = [
'type' => 'bootstrap',
'var_page' => 'page' //分页变量
];
//分页显示数量
$num = 5;
//是否简单分页,也就上一页 下一页
$simple = false;
//用模型来获取所有的 分页数据,think\Paginate 返回的是一个对象
$paginate = StaffModel::paginate($num,$simple,$config);//就是得到了数据表里面的数据
//渲染分页HTML代码,返回分页变量
$page = $paginate->render();
//将分页数据赋值给模板
$this->view->assign('staffs',$paginate);
//将分页变量赋值给模板
$this->view->assign('page',$page);
//渲染模板
return $this->view->fetch();
}点击 "运行实例" 按钮查看在线实例
demo1,2:
{load href="/static/bootstrap/css/bootstrap.min.css"}
<div class="container">
<div class="row">
<h3 class="text-center">员工信息表</h3>
<div class="col-md-8 col-md-offset-2">
<table class="table table-bordered table-hover text-center">
<tr class="info">
<td>ID</td>
<td>姓名</td>
<td>性别</td>
<td>年龄</td>
<td>号码</td>
</tr>
{//单行注释}
{/*
这是多行注释
*/}
{//在当前模板中创建变量,来保护数据表中的数据}
{//assign name="staffs" value=":\app\index\model\Staff::all()"}
{//foreach标签:类似于原生foreach}
{//foreach $staffs as $staff}
<//tr>
<//td>{//$staff.id}</td>
<//td>{//$staff.name}</td>
<//td>{//$staff.sex}</td>
<//td>{//$staff.age}</td>
<//td>{//$staff.phone_number}</td>
<///tr>
{///foreach}
{//2.vplist标签:使用最广泛的,参数众多,功能强大}
{//volist name="staffs" id="staff" offset="2" length="5"}{//staff是循环变量,自定义的和foreach里as后面的一样}
{//volist name="staffs" id="staff" mod="2"}
{//输出偶数行}
{//eq name="mod" value="1"}{//以表格的下标来计算 1/2 余数1 所以下标为1的在表中的第二行}
{//输出奇数行}
{//eq name="mod" value="0"}{//0/2 余数0 所以下标为0的在表中的第一行 ,以此计算}
{//olist name="staffs" id="staff" empty="数据表为空"}
{empty name="staffs"}
<h3 style="color: red">查询数据为空</h3>
{else /}
{volist name="staffs" id="staff"}
<tr>
<td>{$staff.id}</td>
<td>{$staff.name}</td>
<td>{$staff.sex}</td>
<td>{$staff.age}</td>
<td>{$staff.phone_number}</td>
</tr>
{///eq}
{/volist}
{/empty}
</table>
</div>
</div>
</div>
{load href="/static/bootstrap/js/bootstrap.js"}
{load href="/static/jquery/jquery.js"}点击 "运行实例" 按钮查看在线实例
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号