程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> LotusPhp推薦的程序目錄

LotusPhp推薦的程序目錄

編輯:關於PHP編程

一個好的項目都會固定格式的目錄,Lotusphp相對會靈活一些,可以合理安排自己的程序運行目錄,這裡我推薦2種目錄的設置結構

第一種是Lotusphp推薦的目錄結構,首先要確保服務器開啟了父目錄引用的功能,或者通過rewrite引導到 wwwroot/frontend 裡(但是不建議這樣,因為可能存在多個應用,除非你就一個應用,默認引導到index.php)

├─framework
├─app
│  └─frontend                      應用名稱
│      ├─action
│      ├─conf
│      ├─lib
│      └─view
│          └─layout
├─conf
│  ├─dev
│  └─standard
├─lib
│  ├─Dao
│  ├─Util
│  └─Service
└─wwwroot
    └─frontend

wwwroot大家一看就明白,就是web根目錄,所有的程序運行文件,包括框架、程序、類庫、插件、配置文件等都在wwwroot的父目錄中,即使被黑,也只被黑了服務器,單純從web服務器上浏覽,是無法看到任何程序文件和類庫的,wwwroot目錄中只能訪問到圖片,腳本等資源。這樣的配置安全系數相對會比較高。最上面的app文件夾就是應用程序文件夾,下面可以新建多個應用,一般像我們經常是前台一個應用,後台一個應用,2個應用足夠了,對於復雜的邏輯,可以根據需要定義應用的數量,wwwroot中對應的文件夾和app對應的文件夾名稱應該一致,app中存放的後台程序文件,而wwwroot中存放的應該是前台腳本,圖片,樣式等文件。應用目錄下還有幾個文件夾,對應的功能分布是action對應的是應用程序文件,負責解析後台邏輯部分,conf而已定義該應用的配置文件,lib是定義插件,各種該應用使用的公用類庫,Dao數據表類,view裡面存放視圖,也可以理解為我們常說的模板,其中的子文件夾layout是存放布局視圖文件的

conf目錄存放的是配置文件,其中下面的dev目錄是開發模式中應用的配置文件,而standard則是生產模式存放的配置文件,舉個簡單的例子,本地和服務器上的數據庫配置不一樣,就可以存為不一樣的配置,在本地啟用開發模式,傳到服務器啟用生產模式,可以從容應對不同運行環境。所有的配置文件放到conf目錄。全局配置是所有應用共享的配置,每個應用特殊的配置放到應用名稱目錄下的conf。生產環境下只加載標准配置,開發模式下先加載標准配置,然後加載開發配置,覆蓋掉標准配置中相同的。

lib目錄裡存放的是一些基礎類庫,框架外的插件也可以存放在這裡,lotus被聲明後,會自動加載這個文件夾,裡面所有的類庫和函數會被自動加載,Dao存放的是數據表聲明的類,Util存放的是常用的函數和類庫,Service存放的是程序的一些復雜邏輯的類庫,比如我們經常後台登陸,要判斷用戶的合法性,就可以寫成一個類庫,action裡調用該類庫的一個check方法,就可以判斷出用戶是否合法。

你可以把自己定義的php類放到lib和action目錄,在其它地方直接new使用,不需要有include/require語句。autoloader組件會自動加載用到的類,這是按需加載喲。

lib和action目錄下的目錄結構和文件名隨意,只要保證類名字唯一就好了,目前的autoloader沒有使用php5.3的name space特性。

請注意,lotusphp運行目錄中,除了conf,view文件夾下的文件外其余文件必須以類或者函數的形式存在。

還有一種目錄結構是針對無法開啟父目錄引用的,一般虛擬主機裡應用會比較多 

wwwroot
├─cache
├─framework
├─runtime
│  ├─app
│  │  └─frontend
│  │      ├─action
│  │      ├─conf
│  │      ├─lib
│  │      └─view
│  │          └─layout
│  ├─conf
│  │  ├─dev
│  │  └─standard
│  └─lib
└─static

cache是緩存目錄,結構很多人要問為什麼上面的第一種結構沒有設置這個文件夾,因為上面的結構是適合自己的服務器的,所以緩存可以設置到自己設定的文件夾中,甚至設置到內存中,但是虛擬主機是不可能給你這個權限的,要設置只能設置在自己的目錄裡,所以加了這麼一個目錄,runtime是程序運行文件目錄,static是存放樣式表,腳本,圖片文件的。其他目錄的功能和上面是一樣的。

這兩個推薦的目錄方式基本適合大多數人的需求。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved