各位大神:请问 thinkphp5 在行为里怎样获取当前请求方法的模板文件呀?
注:实际模板文件可能不是方法名
![]() | 1 eluotao 2018-08-04 09:38:00 +08:00 这个应该发在 thinkphp 社区吧. |
2 hsr 2018-08-04 09:45:14 +08:00 $request |
![]() | 4 kenorizon 2018-08-04 10:20:47 +08:00 https://github.com/top-think/framework/blob/5.1/library/think/view/driver/Think.php#L115 定位模板文件的函数在这里 不过是 private 的 不能直接调用到 |
![]() | 5 vovov 2018-08-04 11:05:55 +08:00 via Android 模板可以传变量否? |
![]() | 7 linxiaojialin 2018-08-05 02:26:05 +08:00 不用判断这个吧,修改了视图文件就会自动更新的,如果请求时还没更新,可能是 PHP 开了缓存模块,得等几分钟。或可能改错了文件了。 |
![]() | 9 abccccabc OP @linxiaojialin 判断这个是因为某些页面我设置的静态缓存可能会大些,如果此时修改了模板文件,但不检查模板文件的时间,那么静态缓存是不会更新的。 |
![]() | 11 linpf 2018-08-06 09:53:47 +08:00 @abccccabc 目前的框架应该是无法获取到模板文件地址的,除非使用的默认路径。如果不使用默认路径,需要在$this->fetch()方法中的第一个参数传输需要解析的文件。但是这个内容只在 fetch 方法中进行处理,并没有存到任何全局变量或者全局对象属性当中。所以如果需要实现你的想法,那么需要改动一下框架,在 fetch 方法中进行你的判断和更新。 |
![]() | 12 abccccabc OP |