基本約定
源檔案
代碼使用<?php開頭,忽略閉合標簽?>
檔案格式必須是無BOM UTF-8格式
一個檔案只宣告一種型別,如class和interface不能混寫在一個源檔案中
縮進
使用4個空格來縮進,IDE可以設定
行長度
每行120個字符
關鍵字
所有關鍵字均為小寫,如true、false
命名
類名為大駝峰法,如UserModel
類方法名為小駝峰法,如getUserId()
函式使用小寫字母加_組合,如get_cookie()
變數名使用小駝峰法,如$userId
常量定義為大寫字母加_組合,如IS_DEBUG
代碼注釋標簽
類檔案中對類、方法、屬性進行注釋,使用@param @return @throwns
@param注釋寫出詳解,如@param string $username 用戶名
業務模塊
路由為小寫字母加_組成,如/api/get_user_info
View層負責資料展示
Controller層負責輸入引數校驗,最外層捕捉例外,呼叫Logic和View視圖層
Logic層負責具體業務邏輯,呼叫Model層,回傳處理資料
Model層負責資料表查詢和關聯關系
例外類需分清功能,如ParamException表示引數錯誤,UserException表示自定義例外
例外需分類定義code,使用PHP類常量代替,如
<?php namespace app\exceptions\codes; class UserExceptionCode extends BaseExceptionCode { const NO_AUTH = 1000001; const NO_AUTH_MSG = '不具有權限'; const STATUS_EXCEPTION = 1000002; const STATUS_EXCEPTION_MSG = '狀態例外'; }
資料表檔案如有Enum型別,使用PHP類常量代替,如
<?php <?php namespace app\enums; class UserEnum extends BaseEnum { const STATUS_DELETED = -1;// 已洗掉 const STATUS_DISABLE = 0;// 禁用 const STATUS_ENABLE = 1;// 正常 const AUTH_GUEST = 1;// 匿名用戶 const AUTH_GENERAL_ADMIN = 2;// 普通管理員 const AUTH_SUPER_ADMIN = 3;// 超級管理員 }
其中STATUS和AUTH為資料表映射欄位名
Api介面輸出,示例
{ "code" : 0, "msg" : "success", "data" : { "userId" : 100 } }
其中code與msg為必填欄位,data為空的情況下不填,示例
{ "code" : 0, "msg" : "success", "data" : { "userId" : 100 } }
其它
陣列,鍵為字串時候使用單引號,只有一個鍵時候使用單行,示例
$arr = [ 'userId' => 100 ];
多個鍵時候使用多行,示例
$arr = [ 'id' => 100, 'username' => 'admin', ];
還有很多很多規范,大家可以去找一些學習!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/103766.html
標籤:PHP
