thinkphp 缓存css,关于ThinkPhp view路径用到的常量 __STATIC__ __JS__ __CSS__等

本文介绍ThinkPHP5.1中路径常量如__STATIC__、__JS__和__CSS__等的正确配置方法。针对__PUBLIC__无法生效的问题提供了解决方案,并详细说明了如何通过配置tpl_replace_string来实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下面由thinkphp框架教程栏目给大家介绍ThinkPhp view路径用到的常量 __STATIC__ __JS__ __CSS__等,希望对需要的朋友有所帮助!

74c35320d7f8c8818fcaa756d49f87cd.png

ThinkPHP5.1 里面__PUBLIC__无法生效的问题

在用PHP模板的时候需要引用外部的样式文件,之前的版本直接用__PUBLIC__就可以定位到指定的位置。

但是页面中__PUBLIC__并没有解析成对应的路径。

在查询TP5.1的文档时候,有这么一句话。“view_replace_str配置参数改成template配置文件的tpl_replace_string配置参数。”所以需要在config/template.php中设置tpl_replace_string的值。

我们直接添加这条配置项,代码如下。'tpl_replace_string' =>[

'__PUBLIC__' => $_SERVER['REQUEST_SCHEME']."://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['SCRIPT_NAME'])),],

你也可以自己设置成固定样式。'tpl_replace_string' => ['__PUBLIC__'=>'/项目名/public'],

这时候刷新页面看一下,发现还是__PUBLIC__并没有转义。这里是由于Runtime下面有缓存文件。把Runtime下的文件都删除一下,就可以了。

一.index.php 入口文件加入define('SCRIPT_DIR', rtrim(dirname($_SERVER['SCRIPT_NAME']), '\/\\'));

thinkphp5.1以下版本设置__STATIC__ __JS__ __CSS__等常量thinkphp在think目录的view.php$baseReplace = [ '__ROOT__' => $root,

'__URL__' => $base . '/' . $request->module() . '/' . Loader::parseName($request->controller()),

'__STATIC__' => $root . '/static',

'__CSS__' => $root . '/static/css',

'__JS__' => $root . '/static/js',

];

可以在config中修改和重新定义// 视图输出字符串内容替换

'view_replace_str' => [ '__IMAGE__' => '/static/images',

'__UPLOAD__' =>'/upload',

],

thinkphp5.1版本设置

在config目录的template.php加入'tpl_replace_string' =>[ '__STATIC__'=> SCRIPT_DIR . '/static', //后台程序css,img,js所在文件

'__COMMON__'=> SCRIPT_DIR . '/common', //前后共有css,img,js所在文件

'__APP__' => SCRIPT_DIR . '/', //定义首页

'__JS__'=> SCRIPT_DIR . '/static/js', //js文件

'__CSS__'=> SCRIPT_DIR . '/static/css', //css文件

'__IMAGE__'=> SCRIPT_DIR . '/static/images', //image文件

],

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值