溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ThinkPHP5.1里面__PUBLIC__無法生效的問題

發(fā)布時間:2021-01-06 10:02:52 來源:億速云 閱讀:459 作者:小新 欄目:編程語言

這篇文章將為大家詳細講解有關ThinkPHP5.1里面__PUBLIC__無法生效的問題,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

ThinkPHP5.1 里面__PUBLIC__無法生效的問題

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

<Link href="__PUBLIC__/static/css/main.css" rel="stylesheet" />

但是頁面中__PUBLIC__并沒有解析成對應的路徑。

在查詢TP5.1的文檔時候,有這么一句話。“view_replace_str配置參數(shù)改成template配置文件的tpl_replace_string配置參數(shù)?!彼孕枰?code>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'],

這時候刷新頁面看一下,發(fā)現(xiàn)還是__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文件
    ],

關于“ThinkPHP5.1里面__PUBLIC__無法生效的問題”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI