thinkphp5 $this->fetch()
2023-03-29 23:03:03
259
{{single.collect_count}}

参考:
https://blog.csdn.net/fight_tianer/article/details/78602711
http://www.thinkphp.cn/topic/38624.html
https://www.kancloud.cn/manual/thinkphp5/118114

模板:网页长什么样子。
模板文件:html
模板渲染:打开或加载数据到html文件。

thinkphp5的模板渲染有两种情况:

a、继承了think\Controller 用return $this->fetch();
在这里插入图片描述
b、没有继承think\Controller 用return view();
在这里插入图片描述

其中 $this->fetch()和view()的用法一样

以第二种为例,对其进行分析

1、无参数。return view();

此时会自动定位模板文件:
当前模块/默认视图目录(view)/以当前控制器(小写)为名的目录/当前方法(小写).html
application/index(当前模板)/view(默认视图文件夹)/login(文件夹,与控制器同名,不过小写)/index.html(当前方法.html)

2、有参数。

a、return view(‘edit’);//跨模板渲染文件。模板渲染文件(edit.html)

此时会自动定位模板文件:
当前模块/默认视图目录(view)/以当前控制器(小写)为名的目录/参数(小写).html
application/index(当前模板)/view(默认视图文件夹)/login(文件夹,与控制器同名,不过小写)/edit.html

b、return view(‘regist/lala’);//跨控制器。控制器名(小写)/模板渲染文件(lala.html)

此时会自动定位模板文件:
当前模块/默认视图目录(view)/以参数控制器(小写)为名的目录/参数(小写).html
application/index(当前模板)/view(默认视图文件夹)/regist(文件夹,与参数控制器同名,小写)/lala.html

c、return view(‘admin@regist/lala’);//跨模板。模板名@控制器名(小写)/模板渲染文件(lala.html)

此时会自动定位模板文件:
参数模块/默认视图目录(view)/以参数控制器(小写)为名的目录/参数(小写).html
application/admin(参数模板)/view(默认视图文件夹)/regist(文件夹,与参数控制器同名,小写)/lala.html

public/index.php为应用统一入口文件(每一个应用各有一个),通过域名进入服务器时,要先访问它,它把application设为应用根目录app。

回帖
全部回帖({{commentCount}})
{{item.user.nickname}} {{item.user.group_title}} {{item.friend_time}}
{{item.content}}
{{item.comment_content_show ? '取消' : '回复'}} 删除
回帖
{{reply.user.nickname}} {{reply.user.group_title}} {{reply.friend_time}}
{{reply.content}}
{{reply.comment_content_show ? '取消' : '回复'}} 删除
回帖
收起
没有更多啦~
{{commentLoading ? '加载中...' : '查看更多评论'}}