麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > CMS > PhpCMS > 正文

phpcms2008 系統結構

2024-09-10 07:16:05
字體:
來源:轉載
供稿:網友

# 總結構

phpcms2008(以下簡稱為cms) 主要分成[PHPCMS核心]和其它[模塊]兩大部份。

admin, include, templates 三個目錄為核心目錄。

ask, brand, comment 這類目錄則是模塊目錄,如 ask 目錄就是 ask 模塊,目錄中放的是 ask 模塊的源代碼.

另外還有 data, images, uploadfile 三個數據目錄,data 主要用于保存文件緩存文件,images 保存 JS 及圖片文件,uploadfile 保存上傳文件.

# admin 目錄

admin 目錄用于存放[后臺功能控制器](*.inc.php)及[后臺模板](templates/*.tpl.php)。

在 cms 中,后臺功能控制器都通過 /admin.php 文件作為單一入口進行調用了,也就是說,使用后臺功能時瀏覽器訪問的都是 /admin.php 文件.

在 /admin.php 文件中主要進行 cms 環境初始化,引入頭文件,函數定義等,登錄驗證,權限檢查,日志記錄等操作,最后再根據訪問參數包含(include)對應的后臺功能控制器文件.

/admin.php 的訪問參數有三個:mod,file,代表后臺功能控制器文件所屬的模塊及其文件名,當 mod=phpcms 或為空時表示 cms 的后臺功能,這時便是從 /admin 目錄中查找對應的后臺功能控制器文件.

eg. /admin.php?mod=phpcms&file=content&action=manage&catid=599

mod=phpcms 表示從 /admin 目錄中找控制器文件,file=content 表示控制器文件名為 content.inc.php.

所以,訪問這個地址會包含 /admin/content.inc.php 文件,從而運行這個后臺功能控制器的代碼.

為了減少控制器文件的數量,后臺功能控制器文件會把多個操作都寫在一個控制器文件中,比如 content.inc.php 這個控制器就包含了所有文章操作的后臺功能,如添加,修改,刪除,審核,列表,搜索,回收站等等等,再根據瀏覽器 action 參數值決定進行哪一個操作.

控制器中使用 switch 語句判斷 action 參數值并進行相應操作,具體流程與實現參考 /admin.php, /admin/content.inc.php 源代碼.

# include 目錄

include 目錄用于存放函數定義文件,類定義文件,配置文件等非直接執行的流程文件.

eg. global.func.php

此為函數定義文件,此文件中定義的是整個 cms 中通用的函數,學習 cms 必讀的文件.文件名后序為 .func.php

eg. /include/tree.class.php

此文件為類定義文件,文件名后序為 .class.php,tree 則為類名.

eg. config.inc.php

此為非類或函數定義,但用于 include 的文件,文件名后序為 .inc.php,此文件是 cms 的配置文件,里面是 cms 所有常量配置項,學習 cms 必讀文件.

eg. py.dat

這類文件保存的是一些數據,所以也放于 include 目錄中.

/include/admin 目錄中保存的文件意為后臺用到的文件.

eg. /include/admin/global.func.php

整個 cms 后臺中通用的函數,學習 cms 必讀的文件.

/include/fields 目錄保存的是 cms 模型字段類型定義文件,這部份說明留在后面的文檔中說明.Vevb.com

學習 cms,基本上需要把 /include 中的文件都看一次.

# templates 目錄

templates 目錄存放前臺頁面用到的模板,文件名后序為 .html,目錄中第一層表示模板風格:

eg. /templates/default/:默認風格

eg. /templates/yj518/:yj518風格

在風格目錄下,模板按模塊分,每個模塊的模板文件保存在以模塊名命名的目錄下.

eg. /templates/yj518/phpcms/:phpcms 模塊的模板

eg. /templates/yj518/comment/:comment 模塊的模板。

# data 目錄

data 目錄保存的是文件緩存文件。實際上,文件緩存文件保存目錄都由 /include/config.inc.php 中的常量進行定義,如 CACHE_PATH 常量定義的就是緩存默認路徑,只不過 cms 默認把所有緩存類的目錄都放在 data 目錄之下。

因為源代碼會使用 SVN 進行版本管理,但緩存文件并不屬于源代碼,而且 data 目錄通常很容易就達到數十M以上,把這些文件加入版本管理并不合適。

另外,在上傳源代碼到服務器時,需要處處小心避免上傳緩存文件到服務器,因為緩存文件緩存的是數據庫的數據,本地與服務器上的數據不一樣,上傳了緩存文件很可能導至服務器 cms 運行出錯。

所以,data 目錄放到源代碼目錄之外,則 /../data. 現在源代碼目錄一般為 phproot,則 data 目錄的位置為: phproot/../data,與 phproot 同級.

# images 目錄

images 保存的是網頁中要用到的一些靜態文件,如 js 文件,css 文件,圖片文件等.

/imgages/js 目錄存放的是 js

其它一般是圖片或 css 文件.

# uploadfile 目錄

uploadfile 目錄存放的是通過瀏覽器上傳的文件,基本都是圖片文件,容量非常大,服務器上此目錄達到 30G 上下.

命名規則為:年/月日/年月日+隨機數字.文件后序.

eg./uploadfile/2011/0104/20110104121650167.jpg

基于與 data 目錄一樣的原因,uploadfile 目錄同樣是放到源代碼目錄之外.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 依人九九宗合九九九 | 福利在线播放 | 国产精品99久久久久久大便 | 草草视频免费 | 中文字幕在线观看1 | av在线免费观看国产 | 美女又黄又www | 日本一区二区久久久 | 在线免费观看日韩视频 | 无码av女优 | 外国一级黄色片 | 免费观看在线 | 成人免费视频视频在线观看 免费 | 好吊色欧美一区二区三区四区 | 日韩黄色av | 欧美中文字幕一区二区三区亚洲 | 国产一区二区精品91 | 久久久久久久久久久久久九 | 久久国产精品久久久久久久久久 | 国产一级小视频 | 久久亚洲第一 | 最近日本电影hd免费观看 | 国产电影av在线 | 中文亚洲视频 | 欧美va亚洲 | 午夜精品区 | av在线收看 | 一区二区视频在线看 | 中文字幕亚洲一区二区三区 | 久草久视频 | 久久我不卡| 激情大乳女做爰办公室韩国 | 成人福利在线播放 | 成人福利在线免费观看 | 精品国产一区二区三区四区在线 | 久久国产综合精品 | 在线看成人av | 99在线在线视频免费视频观看 | 激情久久一区二区 | 牛牛视频在线 | 欧美亚洲国产成人 |