溫馨提示×

溫馨提示×

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

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

ThinkPHP系統(tǒng)內(nèi)置的慣例配置文件詳細介紹

發(fā)布時間:2021-09-04 16:56:44 來源:億速云 閱讀:119 作者:chen 欄目:開發(fā)技術

本篇內(nèi)容主要講解“ThinkPHP系統(tǒng)內(nèi)置的慣例配置文件詳細介紹”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“ThinkPHP系統(tǒng)內(nèi)置的慣例配置文件詳細介紹”吧!

ThinkPHP的系統(tǒng)內(nèi)置有一個慣例配置文件(位于系統(tǒng)目錄下面的Conf\convention.php),按照大多數(shù)的使用對常用參數(shù)進行了默認配置。本文對慣例配置文件作出注釋詳解如下,供大家參考:

<?php
/**
+------------------------------------------------------------------------------
* ThinkPHP慣例配置文件
* 該文件請不要修改,如果要覆蓋慣例配置的值,可在項目配置文件中設定和慣例不符的配置項
* 配置名稱大小寫任意,系統(tǒng)會統(tǒng)一轉(zhuǎn)換成小寫
* 所有配置參數(shù)都可以在生效前動態(tài)改變
+------------------------------------------------------------------------------
* @category Think
* @package Common
* @version $Id$
+------------------------------------------------------------------------------
*/
if (!defined('THINK_PATH')) exit();
return array(

/* 項目設定 */
'APP_DEBUG'   => false, // 是否開啟調(diào)試模式
'APP_DOMAIN_DEPLOY'   => false,  // 是否使用獨立域名部署項目
'APP_PLUGIN_ON'     => false,  // 是否開啟插件機制
'APP_FILE_CASE'     => false,  // 是否檢查文件的大小寫 對Windows平臺有效
'APP_GROUP_DEPR'    => '.',   // 模塊分組之間的分割符
'APP_GROUP_LIST'    => '',   // 項目分組設定,多個組之間用逗號分隔,例如'Home,Admin'
'APP_AUTOLOAD_REG'   => false,  // 是否開啟SPL_AUTOLOAD_REGISTER
'APP_AUTOLOAD_PATH'   => 'Think.Util.',// __autoLoad 機制額外檢測路徑設置,注意搜索順序
'APP_CONFIG_LIST'    => array('taglibs','routes','tags','htmls','modules','actions'),// 項目額外需要加載的配置列表,默認包括:taglibs(標簽庫定義),routes(路由定義),tags(標簽定義),(htmls)靜態(tài)緩存定義, modules(擴展模塊),actions(擴展操作)

/* Cookie設置 */
'COOKIE_EXPIRE'     => 3600,  // Coodie有效期
'COOKIE_DOMAIN'     => '',   // Cookie有效域名
'COOKIE_PATH'      => '/',   // Cookie路徑
'COOKIE_PREFIX'     => '',   // Cookie前綴 避免沖突

/* 默認設定 */
'DEFAULT_APP'      => '@',   // 默認項目名稱,@表示當前項目
'DEFAULT_GROUP'     => 'Home', // 默認分組
'DEFAULT_MODULE'    => 'Index', // 默認模塊名稱
'DEFAULT_ACTION'    => 'index', // 默認操作名稱
'DEFAULT_CHARSET'    => 'utf-8', // 默認輸出編碼
'DEFAULT_TIMEZONE'   => 'PRC', // 默認時區(qū)
'DEFAULT_AJAX_RETURN'  => 'JSON', // 默認AJAX 數(shù)據(jù)返回格式,可選JSON XML ...
'DEFAULT_THEME'  => 'default', // 默認模板主題名稱
'DEFAULT_LANG'     => 'zh-cn', // 默認語言

/* 數(shù)據(jù)庫設置 */
'DB_TYPE'        => 'mysql',   // 數(shù)據(jù)庫類型
'DB_HOST'        => 'localhost', // 服務器地址
'DB_NAME'        => '',     // 數(shù)據(jù)庫名
'DB_USER'        => 'root',   // 用戶名
'DB_PWD'        => '',     // 密碼
'DB_PORT'        => 3306,    // 端口
'DB_PREFIX'       => 'think_',  // 數(shù)據(jù)庫表前綴
'DB_SUFFIX'       => '',     // 數(shù)據(jù)庫表后綴
'DB_FIELDTYPE_CHECK'  => false,    // 是否進行字段類型檢查
'DB_FIELDS_CACHE'    => true,    // 啟用字段緩存
'DB_CHARSET'      => 'utf8',   // 數(shù)據(jù)庫編碼默認采用utf8
'DB_DEPLOY_TYPE'    => 0, // 數(shù)據(jù)庫部署方式:0 集中式(單一服務器),1 分布式(主從服務器)
'DB_RW_SEPARATE'    => false,    // 數(shù)據(jù)庫讀寫是否分離 主從式有效

/* 數(shù)據(jù)緩存設置 */
'DATA_CACHE_TIME'  => -1,   // 數(shù)據(jù)緩存有效期
'DATA_CACHE_COMPRESS'  => false,  // 數(shù)據(jù)緩存是否壓縮緩存
'DATA_CACHE_CHECK'  => false,  // 數(shù)據(jù)緩存是否校驗緩存
'DATA_CACHE_TYPE'  => 'File', // 數(shù)據(jù)緩存類型,支持:File|Db|Apc|Memcache|Shmop|Sqlite| Xcache|Apachenote|Eaccelerator
'DATA_CACHE_PATH'    => TEMP_PATH,// 緩存路徑設置 (僅對File方式緩存有效)
'DATA_CACHE_SUBDIR'  => false,  // 使用子目錄緩存 (自動根據(jù)緩存標識的哈希創(chuàng)建子目錄)
'DATA_PATH_LEVEL'    => 1,    // 子目錄緩存級別

/* 錯誤設置 */
'ERROR_MESSAGE' => '您瀏覽的頁面暫時發(fā)生了錯誤!請稍后再試~',//錯誤顯示信息,非調(diào)試模式有效
'ERROR_PAGE'  => '', // 錯誤定向頁面

/* 靜態(tài)緩存設置 */
'HTML_CACHE_ON'  => false,  // 默認關閉靜態(tài)緩存
'HTML_CACHE_TIME'  => 60,   // 靜態(tài)緩存有效期
'HTML_READ_TYPE'    => 0,    // 靜態(tài)緩存讀取方式 0 readfile 1 redirect
'HTML_FILE_SUFFIX'   => '.shtml',// 默認靜態(tài)文件后綴

/* 語言設置 */
'LANG_SWITCH_ON'    => false,  // 默認關閉多語言包功能
'LANG_AUTO_DETECT'   => true,  // 自動偵測語言 開啟多語言功能后有效

/* 日志設置 */
'LOG_RECORD'      => false,  // 默認不記錄日志
'LOG_FILE_SIZE'     => 2097152, // 日志文件大小限制
'LOG_RECORD_LEVEL'   => array('EMERG','ALERT','CRIT','ERR'),// 允許記錄的日志級別

/* 分頁設置 */
'PAGE_ROLLPAGE'     => 5,   // 分頁顯示頁數(shù)
'PAGE_LISTROWS'     => 20,   // 分頁每頁顯示記錄數(shù)

/* SESSION設置 */
'SESSION_AUTO_START'  => true,  // 是否自動開啟Session
// 內(nèi)置SESSION類可用參數(shù)
//'SESSION_NAME'     => '',   // Session名稱
//'SESSION_PATH'     => '',   // Session保存路徑
//'SESSION_CALLBACK'   => '',   // Session 對象反序列化時候的回調(diào)函數(shù)

/* 運行時間設置 */
'SHOW_RUN_TIME'  => false,  // 運行時間顯示
'SHOW_ADV_TIME'  => false,  // 顯示詳細的運行時間
'SHOW_DB_TIMES'  => false,  // 顯示數(shù)據(jù)庫查詢和寫入次數(shù)
'SHOW_CACHE_TIMES'  => false,  // 顯示緩存操作次數(shù)
'SHOW_USE_MEM'  => false,  // 顯示內(nèi)存開銷
'SHOW_PAGE_TRACE'  => false,  // 顯示頁面Trace信息 由Trace文件定義和Action操作賦值
'SHOW_ERROR_MSG'    => true,  // 顯示錯誤信息

/* 模板引擎設置 */
'TMPL_ENGINE_TYPE'  => 'Think',   // 默認模板引擎 以下設置僅對使用Think模板引擎有效
'TMPL_DETECT_THEME'   => false,    // 自動偵測模板主題
'TMPL_TEMPLATE_SUFFIX' => '.html',   // 默認模板文件后綴
'TMPL_CACHFILE_SUFFIX' => '.php',   // 默認模板緩存后綴
'TMPL_DENY_FUNC_LIST' => 'echo,exit', // 模板引擎禁用函數(shù)
'TMPL_PARSE_STRING'   => '',     // 模板引擎要自動替換的字符串,必須是數(shù)組形式。
'TMPL_L_DELIM'     => '{',  // 模板引擎普通標簽開始標記
'TMPL_R_DELIM'     => '}',  // 模板引擎普通標簽結(jié)束標記
'TMPL_VAR_IDENTIFY'   => 'array',   // 模板變量識別。留空自動判斷,參數(shù)為'obj'則表示對象
'TMPL_STRIP_SPACE'   => false,    // 是否去除模板文件里面的html空格與換行
'TMPL_CACHE_ON'  => true,    // 是否開啟模板編譯緩存,設為false則每次都會重新編譯
'TMPL_CACHE_TIME'  => -1,     // 模板緩存有效期 -1 為永久,(以數(shù)字為值,單位:秒)
'TMPL_ACTION_ERROR'   => 'Public:success', // 默認錯誤跳轉(zhuǎn)對應的模板文件
'TMPL_ACTION_SUCCESS'  => 'Public:success', // 默認成功跳轉(zhuǎn)對應的模板文件
'TMPL_TRACE_FILE'    => THINK_PATH.'/Tpl/PageTrace.tpl.php',   // 頁面Trace的模板文件
'TMPL_EXCEPTION_FILE'  => THINK_PATH.'/Tpl/ThinkException.tpl.php',// 異常頁面的模板文件
'TMPL_FILE_DEPR'=>'/', //模板文件MODULE_NAME與ACTION_NAME之間的分割符,只對項目分組部署有效
// Think模板引擎標簽庫相關設定
'TAGLIB_BEGIN'     => '<', // 標簽庫標簽開始標記
'TAGLIB_END'      => '>', // 標簽庫標簽結(jié)束標記
'TAGLIB_LOAD'      => true, // 是否使用內(nèi)置標簽庫之外的其它標簽庫,默認自動檢測
'TAGLIB_BUILD_IN'    => 'cx', // 內(nèi)置標簽庫名稱(標簽使用不必指定標簽庫名稱),以逗號分隔
'TAGLIB_PRE_LOAD'    => '',  // 需要額外加載的標簽庫(須指定標簽庫名稱),多個以逗號分隔
'TAG_NESTED_LEVEL'  => 3,  // 標簽嵌套級別
'TAG_EXTEND_PARSE'   => '',  // 指定對普通標簽進行擴展定義和解析的函數(shù)名稱。

/* 表單令牌驗證 */
'TOKEN_ON'          =>  true,   // 開啟令牌驗證
'TOKEN_NAME'        =>  '__hash__',  // 令牌驗證的表單隱藏字段名稱
'TOKEN_TYPE'         =>  'md5',  // 令牌驗證哈希規(guī)則

/* URL設置 */
'URL_CASE_INSENSITIVE' => false,  // URL地址是否不區(qū)分大小寫
'URL_ROUTER_ON'     => false,  // 是否開啟URL路由
'URL_DISPATCH_ON'    => true, // 是否啟用Dispatcher
'URL_MODEL'   => 1,    // URL訪問模式,可選參數(shù)0、1、2、3,代表以下四種模式:
// 0 (普通模式); 1 (PATHINFO 模式); 2 (REWRITE 模式); 3 (兼容模式) 當URL_DISPATCH_ON開啟后有效; 默認為PATHINFO 模式,提供最好的用戶體驗和SEO支持
'URL_PATHINFO_MODEL'  => 2,    // PATHINFO 模式,使用數(shù)字1、2、3代表以下三種模式:
// 1 普通模式(參數(shù)沒有順序,例如/m/module/a/action/id/1);
// 2 智能模式(系統(tǒng)默認使用的模式,可自動識別模塊和操作/module/action/id/1/ 或者 /module,action,id,1/...);
// 3 兼容模式(通過一個GET變量將PATHINFO傳遞給dispather,默認為s index.php?s=/module/action/id/1)
'URL_PATHINFO_DEPR'   => '/', // PATHINFO模式下,各參數(shù)之間的分割符號
'URL_HTML_SUFFIX'    => '', // URL偽靜態(tài)后綴設置

/* 系統(tǒng)變量名稱設置 */
'VAR_GROUP'       => 'g',   // 默認分組獲取變量
'VAR_MODULE'      => 'm',  // 默認模塊獲取變量
'VAR_ACTION'      => 'a',  // 默認操作獲取變量
'VAR_ROUTER'      => 'r',   // 默認路由獲取變量
'VAR_PAGE'       => 'p',  // 默認分頁跳轉(zhuǎn)變量
'VAR_TEMPLATE'     => 't',  // 默認模板切換變量
'VAR_LANGUAGE'     => 'l',  // 默認語言切換變量
'VAR_AJAX_SUBMIT'    => 'ajax', // 默認的AJAX提交變量
'VAR_PATHINFO'     => 's', // PATHINFO 兼容模式獲取變量例如 ?s=/module/action/id/1 后面的參數(shù)取決于URL_PATHINFO_MODEL 和 URL_PATHINFO_DEPR

);

此外,還需注意,由于新版系統(tǒng)架構的改變,部分慣例配置的參數(shù)已經(jīng)分離出來納入了行為擴展的屬性參數(shù),讀者可查閱手冊進一步了解。

到此,相信大家對“ThinkPHP系統(tǒng)內(nèi)置的慣例配置文件詳細介紹”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關內(nèi)容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!

向AI問一下細節(jié)

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

AI