最近開始學習thinkphp,在下不才,很多的問題看不明白是以想拿出來,恕我大膽發在首頁上,希望看到的人能為我答疑解惑,這樣大家有個互動,學起來快點,别無他意,所謂活到老,學到老,希望各位不要見笑啊。
我的做法很簡單,先從手冊開始,手冊是開發thinkphp作者辛勤勞動的成果,但是有些地方是在是不懂,如果有幸各位也遇到類似的問題希望能回複。thinkphp手冊位址:http://doc.thinkphp.cn/manual.html
1.架構目錄
在章節1.6 目錄結構,内容如下:
新版的目錄結構在原來的基礎上進行了調整,更加清晰。 目錄/檔案 說明 ThinkPHP.php 架構入口檔案 Common 架構公共檔案目錄 Conf 架構配置檔案目錄 Lang 架構系統語言目錄 Lib 系統核心基類庫目錄 Tpl 系統模闆目錄 Extend 架構擴充目錄(關于擴充目錄的詳細資訊請參考後面的擴充章節) 注意:如果你下載下傳的是核心版本,有可能Extend目錄是空的,因為ThinkPHP本身不依賴任何擴充。
如果我們打開主目錄下的ThinkPHP目錄,主要内容如上所說,截圖如下圖1:
圖1
可以發現系統核心基類庫已經不叫Lib了,這裡是Library,開提到Extend這目錄,說是架構擴充目錄,并且還特别提示在核心版本中這個目錄中是空的,可是我在ThinkPHP3.2.2核心版和ThinkPHP3.2.2完整版這兩個版本中都沒有找到這個Extend目錄。截圖如下:
圖2.完整版目錄
圖3.核心版目錄
如果我們打開的是整個目錄看到的是下面的内容,如果4
圖4.完整目錄
這裡我們可以看到其他的檔案目錄,還好作者在除了架構目錄ThinkPHP之外的其他目錄中都放了一個README.md檔案來告訴我們這個目錄是做什麼的,
1.Application:項目目錄
2.Public:資源檔案目錄,應該放css,js和圖檔
3.ThinkPHP:架構目錄,這個是核心類容放在這裡
4..htaccess:一個分布式配置檔案,剛接觸這個檔案覺得很複雜,這裡不具體講這個檔案的功能
5.index.phh:入口檔案
6.README.md:這個自述檔案
2.命名規則
1.類名以.class.php結尾,并且使用駝峰命名,這點個人很稀罕,可能因為作者是寫了一段時間的java再來寫這個架構,把java中的一些東西拿到這裡了,是以我很稀罕,因為我寫了很長時間的.net,呵呵,很讨厭以下劃線分割單詞來命名的方式,感覺讓人來讀一個以下劃線分割的數組,麻不麻煩,直接讀幾個單詞要比讀一個數組簡單啊,但是這個下劃線命名的方式是php發明者的習慣,我們隻好無奈地接受。
2.大小寫,我記得php中自定義變量是區分大小寫的,其他都不區分,但是為了避免我們在大小寫單詞之間切換,建議還是區分,我覺得能用小寫盡量用小寫,上學時做英文閱讀了解有沒有很煩出現大寫的單詞,有木有?
3.類名和檔案名保持一緻,這個也雙手舉贊,這樣看到檔案名就知道類名稱了,還有.net是這樣規定的。
4.函數的命名使用小寫字母加下劃線的方式如:get_client_ip,這點為什麼沒有使用駝峰或者pascal命名方式呢,這樣不是更加符合閱讀習慣麼。
5.常量,語言參數,配置參數都是大寫字母加下劃線,一樣的不習慣,讀起來費腦子。