国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

【PHP】PSR簡要規范

Steve_Wang_ / 3607人閱讀

摘要:是一系列關于開發的規范,分有好幾個版本,自己學的也較為膚淺,但還是希望能時常查看規范,為了方便記憶和遵循,我把關鍵詞為必須的撿拾出來,做個簡單地必要規范的記錄。所有文件必須使用作為行的結束符。

PSR是一系列關于PHP開發的規范,分有好幾個版本,自己學的也較為膚淺,但還是希望能時常查看規范,為了方便記憶和遵循,我把關鍵詞為必須的撿拾出來,做個簡單地必要規范的記錄。(就是個搬磚的。。。)
https://github.com/PizzaLiu/PHP-FIG
http://segmentfault.com/a/1190000002521577

官方發布文件版本

PSR-0(已棄用)

PSR-1 基本代碼規范

PSR-2 代碼風格規范

PSR-2 補充文檔

PSR-3 日志接口規范

PSR-4 自動載入

PSR-5PSR-6投票還未通過

必須 PSR-1 基本代碼規范

PHP代碼文件必

PHP代碼文件必須以 不帶BOM的 UTF-8 編碼

命名空間以及類必須符合 PSR 的自動加載規范:PSR-0 或 PSR-4 中的一個

類的命名必須遵循 StudlyCaps 大寫開頭的駝峰命名規范

類中的常量所有字母都必須大寫,單詞間用下劃線分隔;

方法名稱必須符合 camelCase 式的小寫開頭駝峰命名規范

PHP代碼必須使用 長標簽 短輸出標簽; 一定不可使用其它自定義標簽。

命名空間以及類的命名必須遵循 PSR-0.

PHP 5.3及以后版本的代碼必須使用正式的命名空間

每個類都獨立為一個文件,且命名空間至少有一個層次:頂級的組織名稱(vendor name)

PSR-2 代碼風格規范

代碼必須遵循 PSR-1 中的編碼規范 。

代碼必須使用4個空格符而不是 tab鍵 進行縮進

備注: 使用空格而不是tab鍵縮進的好處在于, 避免在比較代碼差異、打補丁、重閱代碼以及注釋時產生混淆。 并且,使用空格縮進,讓對齊變得更方便。

每個 namespace 命名空間聲明語句和 use 聲明語句塊后面,必須插入一個空白行

類的開始花括號({)必須寫在函數聲明后自成一行結束花括號(})也必須寫在函數主體后自成一行

方法的開始花括號({)必須寫在函數聲明后自成一行結束花括號(})也必須寫在函數主體后自成一行

類的屬性和方法必須 添加訪問修飾符(private、protected 以及 public) abstract 以及 final 必須聲明在訪問修飾符之前,而 static 必須聲明在訪問修飾符之后

控制結構的關鍵字后必須要有一個空格符,而調用方法或函數時則一定不能有

控制結構的開始花括號({)必須寫在聲明的同一行,而結束花括號(})必須寫在主體后自成一行

控制結構的開始左括號后和結束右括號前,都一定不能有空格符

所有PHP文件必須使用Unix LF (linefeed)作為行的結束符

所有PHP文件必須以一個空白行作為結束

純PHP代碼文件必須省略最后的 ?> 結束標簽

每行一定不能存在多于一條語句

非空行后一定不能有多余的空格符

PHP所有 關鍵字必須全部小寫

常量 true 、false 和 null 也必須全部小寫

PSR-3 日志接口規范 PSR-4 自動加載規范

一個完整的類名需具有以下結構:

<命名空間>(<子命名空間>)*<類名>
完整的類名必須要有一個頂級命名空間,被稱為 "vendor namespace";

完整的類名可以有一個或多個子命名空間;

完整的類名必須有一個最終的類名;

完整的類名中任意一部分中的下滑線都是沒有特殊含義的;

完整的類名可以由任意大小寫字母組成;

所有類名都必須是大小寫敏感的。

當根據完整的類名載入相應的文件

完整的類名中,去掉最前面的命名空間分隔符,前面連續的一個或多個命名空間和子命名空間,作為“命名空間前綴”,其必須與至少一個“文件基目錄”相對應;

緊接命名空間前綴后的子命名空間必須與相應的”文件基目錄“相匹配,其中的命名空間分隔符將作為目錄分隔符。

末尾的類名必須與對應的以 .php 為后綴的文件同名。

自動加載器(autoloader)的實現一定不能拋出異常、一定不能觸發任一級別的錯誤信息以及不應該有返回值。
建議(更多請查看詳細文檔) PSR-1

PHP代碼中應該只定義類、函數、常量等聲明,或其他會產生 從屬效應 的操作(如:生成文件輸出以及修改.ini配置文件等),二者只能選其一;

類的屬性命名可以遵循 大寫開頭的駝峰式 ($StudlyCaps)、小寫開頭的駝峰式 ($camelCase) 又或者是 下劃線分隔式 ($under_score),本規范不做強制要求,但無論遵循哪種命名方式,都應該在一定的范圍內保持一致。

PSR-2

每行的字符數應該軟性保持在80個之內, 理論上一定不可多于120個, 但一定不能有硬性限制。

空行可以使得閱讀代碼更加方便以及有助于代碼的分塊。

代碼示例 PSR-2
 $b) {
            $foo->bar($arg1);
        } else {
            BazClass::bar($arg2, $arg3);
        }
    }

    final public static function bar()
    {
        // method body
    }
}

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/21183.html

相關文章

  • PHP回顧之創建自己的Composer包

    摘要:想要更好的利用協同工作,學會創建自己的包是一項必不可少的技能。編輯項目的或,增加一項配置,例如以上配置使用中國全量鏡像網站作為默認中央倉庫。創建自己的包創建一個包只需兩步填寫包描述信息寫代碼。通過簡單兩步,我們創建的自己的包。 轉載請注明文章出處:https://tlanyan.me/php-review... PHP回顧系列目錄 PHP基礎 web請求 cookie web響應 ...

    KoreyLee 評論0 收藏0
  • PHP 標準規范

    摘要:標準規范簡介是的簡寫,由組織制定的規范,是開發的實踐標準。具體標準有有了統一編碼風格規范,更有利于查看和學習各個框架或類庫,不不需要每次都適應新的編碼風格。同時在開發團隊內部使用統一的編碼規范更有利于代碼審查版本控制團隊內部交流。 PHP 標準規范 PSR PSR 簡介 PSR 是 PHP Standard Recommendations 的簡寫,由 PHP FIG 組織制定的 PHP...

    FuisonDesign 評論0 收藏0
  • PSR-1 Basic Coding Standard(譯)-- 基礎編碼規范

    摘要:注本文算是筆者對規范翻譯學習筆記,之后會陸續翻譯剩余的規范,可能翻譯的有錯誤的地方,希望讀者能夠指正,非常感謝什么是是標準建議的簡寫,是由組織框架交互操作組織提出。的工作是尋找項目之間的共性,以及讓開發者能更好協同工作的方式。 注:本文算是筆者對PSR規范翻譯/學習筆記,之后會陸續翻譯剩余的規范,可能翻譯的有錯誤的地方,希望讀者能夠指正,非常感謝. 什么是PSR? ? ??? PSR是...

    darryrzhong 評論0 收藏0
  • php-psr-chinese psr規范總結

    摘要:公認規范總結規范中文版大部分來源翻譯部分包含例子,附錄包含了一些規范的實現基本編碼標準編碼風格指南日志接口規范自動加載規范規范英文版未使用草案已棄用規范原理實現實現自動加載實現原理資料來源與參考 PSR公認規范總結 PSR規范中文版(大部分來源google翻譯)(cn) 部分psr包含例子,附錄包含了一些規范的實現 PSR-1:基本編碼標準 PSR-2:編碼風格指南 PSR-3:日志...

    tuomao 評論0 收藏0
  • PSR-4——新鮮出爐的PHP規范

    摘要:制定的規范,簡稱,是開發的事實標準。原本有四個規范,分別是自動加載基本代碼規范代碼樣式日志接口年底,新出了第個規范。區別在于的規范比較干凈,去除了兼容以前版本的內容,有一點升級版的感覺。 FIG制定的PHP規范,簡稱PSR,是PHP開發的事實標準。 PSR原本有四個規范,分別是: PSR-0 自動加載 PSR-1 基本代碼規范 PSR-2 代碼樣式 PSR-3 日志接口 20...

    Fundebug 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<