從" ThinkPHP 開發規範 "看 PHP 的命名規範和開發建議

稍稍水一篇博客,摘抄自Think PHP 的開發規範,頗有引導性,咱們能夠將這些規範實踐到原生 PHP 中。php

命名規範

使用ThinkPHP開發的過程當中應該儘可能遵循下列命名規範:html

  • 類文件都是以.class.php爲後綴(這裏是指的ThinkPHP內部使用的類庫文件,不表明外部加載的類庫文件),使用駝峯法命名,而且首字母大寫,例如 DbMysql.class.php;
  • 類的命名空間地址和所在的路徑地址一致,例如 Home\Controller\UserController類所在的路徑應該是 Application/Home/Controller/UserController.class.php;
  • 確保文件的命名和調用大小寫一致,是因爲在類Unix系統上面,對大小寫是敏感的(而ThinkPHP在調試模式下面,即便在Windows平臺也會嚴格檢查大小寫);
  • 類名和文件名一致(包括上面說的大小寫一致),例如 UserController類的文件命名是UserController.class.php, InfoModel類的文件名是InfoModel.class.php, 而且不一樣的類庫的類命名有必定的規範;
  • 函數、配置文件等其餘類庫文件以外的通常是以.php爲後綴(第三方引入的不作要求);
  • 函數的命名使用小寫字母和下劃線的方式,例如 get_client_ip;
  • 方法的命名使用駝峯法,而且首字母小寫或者使用下劃線「_」,例如 getUserName,_parseType,一般下劃線開頭的方法屬於私有方法;
  • 屬性的命名使用駝峯法,而且首字母小寫或者使用下劃線「_」,例如 tableName、_instance,一般下劃線開頭的屬性屬於私有屬性;
  • 以雙下劃線「__」打頭的函數或方法做爲魔法方法,例如 __call 和 __autoload;
  • 常量以大寫字母和下劃線命名,例如 HAS_ONE和 MANY_TO_MANY;
  • 配置參數以大寫字母和下劃線命名,例如HTML_CACHE_ON;
  • 語言變量以大寫字母和下劃線命名,例如MY_LANG,如下劃線打頭的語言變量一般用於系統語言變量,例如 CLASS_NOT_EXIST
  • 對變量的命名沒有強制的規範,能夠根據團隊規範來進行;
  • ThinkPHP的模板文件默認是以.html 爲後綴(能夠經過配置修改);
  • 數據表和字段採用小寫加下劃線方式命名,並注意字段名不要如下劃線開頭,例如 think_user 表和 user_name字段是正確寫法,相似 _username 這樣的數據表字段可能會被過濾。

特例:在ThinkPHP裏面,有一個函數命名的特例,就是單字母大寫函數,這類函數一般是某些操做的快捷定義,或者有特殊的做用。例如:A、D、S、L 方法等等,他們有着特殊的含義,後面會有所瞭解。sql

因爲ThinkPHP默認所有使用UTF-8編碼,因此請確保你的程序文件採用UTF-8編碼格式保存,而且去掉BOM信息頭(去掉BOM頭信息有不少方式,不一樣的編輯器都有設置方法,也能夠用工具進行統一檢測和處理),不然可能致使不少意想不到的問題。thinkphp

開發建議

在使用ThinkPHP進行開發的過程當中,咱們給出以下建議,會讓你的開發變得更輕鬆:框架

  • 遵循框架的命名規範和目錄規範;
  • 開發過程當中儘可能開啓調試模式,及早發現問題;
  • 多看看日誌文件,查找隱患問題;
  • 養成使用I函數獲取輸入變量的好習慣;
  • 更新或者環境改變後遇到問題首要問題是清空Runtime目錄;
相關文章
相關標籤/搜索