欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

淺析PHP開(kāi)發(fā)規(guī)范

 更新時(shí)間:2018年02月05日 14:37:09   投稿:laozhang  
本篇文章是小編為大家整理的關(guān)于PHP開(kāi)發(fā)規(guī)范的相關(guān)內(nèi)容,適合PHP初學(xué)者,一起參考下吧。

基本約定

源文件

代碼使用<?php開(kāi)頭,忽略閉合標(biāo)簽?>

文件格式必須是無(wú)BOM UTF-8格式

一個(gè)文件只聲明一種類型,如class和interface不能混寫(xiě)在一個(gè)源文件中

縮進(jìn)

使用4個(gè)空格來(lái)縮進(jìn),IDE可以設(shè)置

行長(zhǎng)度

每行120個(gè)字符

關(guān)鍵字

所有關(guān)鍵字均為小寫(xiě),如true、false

命名

類名為大駝峰法,如UserModel

類方法名為小駝峰法,如getUserId()

函數(shù)使用小寫(xiě)字母加_組合,如get_cookie()

變量名使用小駝峰法,如$userId

常量定義為大寫(xiě)字母加_組合,如IS_DEBUG

代碼注釋標(biāo)簽

類文件中對(duì)類、方法、屬性進(jìn)行注釋,使用@param @return @throwns

@param注釋寫(xiě)出詳解,如@param string $username 用戶名

業(yè)務(wù)模塊

路由為小寫(xiě)字母加_組成,如/api/get_user_info

View層負(fù)責(zé)數(shù)據(jù)展示

Controller層負(fù)責(zé)輸入?yún)?shù)校驗(yàn),最外層捕捉異常,調(diào)用Logic和View視圖層

Logic層負(fù)責(zé)具體業(yè)務(wù)邏輯,調(diào)用Model層,返回處理數(shù)據(jù)

Model層負(fù)責(zé)數(shù)據(jù)表查詢和關(guān)聯(lián)關(guān)系

異常類需分清功能,如ParamException表示參數(shù)錯(cuò)誤,UserException表示自定義異常

異常需分類定義code,使用PHP類常量代替,如

<?php
namespace app\exceptions\codes;

class UserExceptionCode extends BaseExceptionCode {
  const NO_AUTH       = 1000001;
  const NO_AUTH_MSG     = '不具有權(quán)限';
  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;// 超級(jí)管理員
}

其中STATUS和AUTH為數(shù)據(jù)表映射字段名

Api接口輸出,示例

{
  "code" : 0,
  "msg" : "success",
  "data" : {
    "userId" : 100
  }
}

其中code與msg為必填字段,data為空的情況下不填,示例

{
  "code" : 100001,
  "msg" : "不具有權(quán)限"
}

其它

數(shù)組,鍵為字符串時(shí)候使用單引號(hào),只有一個(gè)鍵時(shí)候使用單行,示例

$arr = [ 'userId' => 100 ];

多個(gè)鍵時(shí)候使用多行,示例

$arr = [
  'id'    => 100,
  'username' => 'admin',
];

字符串使用單引號(hào)'

相關(guān)文章

最新評(píng)論