PHP開發規範執行個體詳解

來源:互聯網
上載者:User
本文主要和大家分享PHP開發規範執行個體詳解,希望能協助到大家。

源檔案

代碼使用<?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類常量代替,如


<?phpnamespace 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類常量代替,如


<?phpnamespace 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" : 100001,  "msg" : "不具有許可權"}

其它

數組,鍵為字串時候使用單引號,只有一個鍵時候使用單行,樣本


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

多個鍵時候使用多行,樣本


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

字串使用單引號'

相關推薦:

php代碼 PHP開發規範手冊之PHP代碼規範詳解

PHP開發規範小結

PHP開發規範手冊之PHP代碼規範詳解

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.