米
心情
所有
图集
登录
搜索
原创
thinkphp5.1-6.0实现页面静态化方法仅需要一个方法
此城无心忘少年
发布于:2021-03-19
页面静态化,可能现在用的人比较少了,但是还是有场景需要的!这里我研究了ob系列函数,发现不是特别方便,但是也熟悉了ob系列函数的用法,下面讲讲tp怎么实现页面静态化的最简单的办法。 这里说说我的运行环境: tp6.0框架 仅需要一个语句生成。 file_put_contents("./index111.html", view()->getContent()); --- ## 我的index方法。 public function index() { $cid = input("get.cid"); if($cid){ $where["cate_id"] = $cid; $seo = ArticleCate::field('seo_keys,seo_desc')->find($cid); View::assign("seo",$seo); } $order = input('get.orderBy',"","trim"); if(isset($order) && $order == 2){ $orderStr = "last_time DESC,top DESC,recommend DESC,id DESC"; }else{ $orderStr = "top DESC,recommend DESC,id DESC"; } $where["status"] =1; if(!isset($where)){ $where = 1; } if(\think\facade\Request::isMobile()){ $mobile = true; }else{ $mobile = false; } //热门老师 $list = \app\common\model\Teachers::with("user") ->where("hot",1) ->order("update_time desc,id DESC") ->cache(true) ->limit(4) ->select(); foreach ($list as $k => $v){ //更新文章的展现量 Teachers::where("id",$v["id"])->inc('pv',rand(1,5))->update(); $list[$k]["subjects"] = json_decode($v["subjects"]); } //明星老师 $list_s = \app\common\model\Teachers::with("user") ->where("start",1) ->order("update_time desc,id DESC") ->cache(true) ->limit(6) ->select(); foreach ($list_s as $k => $v){ //更新文章的展现量 Teachers::where("id",$v["id"])->inc('pv',rand(1,5))->update(); if(!is_array($v["subjects"]) && $v["subjects"] != null){ $list_s[$k]["subjects"] = json_decode($v["subjects"]); } } //最新学员 $stu = \app\common\model\Students::with("user") ->order("update_time desc,id DESC") ->cache(true) ->limit(8) ->select(); foreach ($stu as $k => $v){ //更新文章的展现量 Students::where("id",$v["id"])->inc('pv',rand(1,5))->update(); } //家教日记 $sql1 = Content::where("cate_id",78) ->order("id DESC") ->where("status",1) ->limit(6) ->cache(true) ->select(); $sql2 = Content::where("cate_id",75) ->order("id DESC") ->where("status",1) ->limit(6) ->cache(true) ->select(); $sql3 = Content::where("cate_id",76) ->order("id DESC") ->where("status",1) ->limit(6) ->cache(true) ->select(); $sql4 = Content::where("cate_id",77) ->order("id DESC") ->where("status",1) ->limit(6) ->cache(true) ->select(); View::assign("sql1",$sql1); View::assign("sql2",$sql2); View::assign("sql3",$sql3); View::assign("sql4",$sql4); //echo Db::name("article")->getLastSql();die; View::assign("list",$list); View::assign("list_s",$list_s); View::assign("stu",$stu); file_put_contents("./index111.html", view()->getContent()); return view(); } 由于tp6吧模板分割成composer包了,tp5.1也是用的这个包,所以tp5.1页面静态化的方法也是一样的。
注:原创不易,转载请注明出处(
https://micuu.com/new/1478.html
),本站所有资源来源于网络收集,如有侵权请联系QQ245557979进行清除。
最后修改与 2022-02-22
上一篇:
phpspreadsheet做excel导入,乱码等解决方案
下一篇:
php判断是否为json字段的方法
留言反馈
请先登录
问题反馈渠道,如有软件无法下载或者其他问题可反馈。【由于某种原因,目前留言不展示】
用户需要登录后才能留言反馈
立即留言
珍藏视频
10分钟高效燃脂
30天高效瘦脸操
5分钟缓解颈椎操
友人
微博
全民K歌
唱吧
今日头条
悠悠网
科技小锅盖
彼岸桌面
阮一峰
laravel社区
V2ex
掘金
更多>