审查视图

application/common/behavior/Common.php 2.1 KB
1 2 3 4 5
<?php

namespace app\common\behavior;

use think\Config;
Karson authored
6
use think\Lang;
7 8 9 10

class Common
{
Karson authored
11
    public function moduleInit(&$request)
12
    {
Karson authored
13 14 15
        // 设置mbstring字符编码
        mb_internal_encoding("UTF-8");
Karson authored
16
        // 如果修改了index.php入口地址,则需要手动修改cdnurl的值
17
        $url = preg_replace("/\/(\w+)\.php$/i", '', $request->root());
18 19 20
        // 如果未设置__CDN__则自动匹配得出
        if (!Config::get('view_replace_str.__CDN__'))
        {
21 22 23 24 25 26 27 28 29 30 31
            Config::set('view_replace_str.__CDN__', $url);
        }
        // 如果未设置__PUBLIC__则自动匹配得出
        if (!Config::get('view_replace_str.__PUBLIC__'))
        {
            Config::set('view_replace_str.__PUBLIC__', $url . '/');
        }
        // 如果未设置__ROOT__则自动匹配得出
        if (!Config::get('view_replace_str.__ROOT__'))
        {
            Config::set('view_replace_str.__ROOT__', preg_replace("/\/public\/$/", '', $url . '/'));
32 33 34 35
        }
        // 如果未设置cdnurl则自动匹配得出
        if (!Config::get('site.cdnurl'))
        {
36
            Config::set('site.cdnurl', $url);
37
        }
Karson authored
38 39 40
        // 如果未设置cdnurl则自动匹配得出
        if (!Config::get('upload.cdnurl'))
        {
41
            Config::set('upload.cdnurl', $url);
Karson authored
42
        }
43
        if (Config::get('app_debug'))
44
        {
45
            // 如果是调试模式将version置为当前的时间戳可避免缓存
46
            Config::set('site.version', time());
47
            // 如果是开发模式那么将异常模板修改成官方的
Karson authored
48
            Config::set('exception_tmpl', THINK_PATH . 'tpl' . DS . 'think_exception.tpl');
49
        }
50 51 52 53 54
        // 如果是trace模式且Ajax的情况下关闭trace
        if (Config::get('app_trace') && $request->isAjax())
        {
            Config::set('app_trace', false);
        }
55 56
    }
Karson authored
57 58 59 60 61 62 63 64 65
    public function addonBegin(&$request)
    {
        // 加载插件语言包
        Lang::load([
            APP_PATH . 'common' . DS . 'lang' . DS . $request->langset() . DS . 'addon' . EXT,
        ]);
        $this->moduleInit($request);
    }
66
}