淺析PHP開發(fā)規(guī)范
基本約定
源文件
代碼使用<?php開頭,忽略閉合標簽?>
文件格式必須是無BOM UTF-8格式
一個文件只聲明一種類型,如class和interface不能混寫在一個源文件中
縮進
使用4個空格來縮進,IDE可以設置
行長度
每行120個字符
關鍵字
所有關鍵字均為小寫,如true、false
命名
類名為大駝峰法,如UserModel
類方法名為小駝峰法,如getUserId()
函數(shù)使用小寫字母加_組合,如get_cookie()
變量名使用小駝峰法,如$userId
常量定義為大寫字母加_組合,如IS_DEBUG
代碼注釋標簽
類文件中對類、方法、屬性進行注釋,使用@param @return @throwns
@param注釋寫出詳解,如@param string $username 用戶名
業(yè)務模塊
路由為小寫字母加_組成,如/api/get_user_info
View層負責數(shù)據(jù)展示
Controller層負責輸入?yún)?shù)校驗,最外層捕捉異常,調用Logic和View視圖層
Logic層負責具體業(yè)務邏輯,調用Model層,返回處理數(shù)據(jù)
Model層負責數(shù)據(jù)表查詢和關聯(lián)關系
異常類需分清功能,如ParamException表示參數(shù)錯誤,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 = '狀態(tài)異常';
}
數(shù)據(jù)表文件如有Enum類型,使用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為數(shù)據(jù)表映射字段名
Api接口輸出,示例
{
"code" : 0,
"msg" : "success",
"data" : {
"userId" : 100
}
}
其中code與msg為必填字段,data為空的情況下不填,示例
{
"code" : 100001,
"msg" : "不具有權限"
}
其它
數(shù)組,鍵為字符串時候使用單引號,只有一個鍵時候使用單行,示例
$arr = [ 'userId' => 100 ];
多個鍵時候使用多行,示例
$arr = [ 'id' => 100, 'username' => 'admin', ];
字符串使用單引號'
相關文章
Linux服務器下PHPMailer發(fā)送郵件失敗的問題解決
這篇文章主要給大家介紹了關于如何解決Linux服務器下PHPMailer發(fā)送郵件失敗的問題,文中通過示例代碼介紹的很詳細,相信對大家具有一定的參考價值,需要的朋友們下面來一起看看吧。2017-03-03
PHP讀取并輸出XML文件數(shù)據(jù)的簡單實現(xiàn)方法
這篇文章主要介紹了PHP讀取并輸出XML文件數(shù)據(jù)的簡單實現(xiàn)方法,涉及php針對xml格式文件數(shù)據(jù)的載入、遍歷、讀取、輸出等相關操作技巧,需要的朋友可以參考下2017-12-12
php中使用key,value,current,next和prev函數(shù)遍歷數(shù)組的方法
這篇文章主要介紹了php中使用key,value,current,next和prev函數(shù)遍歷數(shù)組的方法,較為詳細的分析了php中數(shù)組遍歷的常用技巧與實例用法,需要的朋友可以參考下2015-03-03

