成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

檢測 PHP 應(yīng)用的代碼復雜度

or0fun / 1708人閱讀

摘要:原文來自如果說你想知道一個項目的代碼復雜度是什么樣子的,我推薦你可以使用和來檢測一下。安裝也是可以直接全局安裝安裝完畢之后,可以這樣來運行命令分析代碼復雜度等待運行結(jié)束,用打開就可以查看相對應(yīng)的結(jié)果,大概是這個樣子

原文來自:https://www.codecasts.com/blo...

如果說你想知道一個 PHP 項目的代碼復雜度是什么樣子的,我推薦你可以使用 phploc 和 PhpMetrics 來檢測一下。

1.使用 phploc

這是一個標準的 composer package,不過我推薦大家可以直接使用 composer 全局安裝:

composer global require "phploc/phploc=*"

然后安裝完畢,你就可以使用 phploc 命令來檢測你的代碼復雜度了:

phploc ./app

比如上面這行代碼就是檢測你的項目中 app/ 目錄的代碼復雜度;如果是一個 Laravel 的項目的話,大概會是這個樣子的結(jié)果輸出:

phploc 3.0.1 by Sebastian Bergmann.

Directories                                         14
Files                                               72

Size
  Lines of Code (LOC)                             3748
  Comment Lines of Code (CLOC)                     790 (21.08%)
  Non-Comment Lines of Code (NCLOC)               2958 (78.92%)
  Logical Lines of Code (LLOC)                     950 (25.35%)
    Classes                                        656 (69.05%)
      Average Class Length                           9
        Minimum Class Length                         0
        Maximum Class Length                        84
      Average Method Length                          2
        Minimum Method Length                        0
        Maximum Method Length                       21
    Functions                                        0 (0.00%)
      Average Function Length                        0
    Not in classes or functions                    294 (30.95%)

Cyclomatic Complexity
  Average Complexity per LLOC                     0.10
  Average Complexity per Class                    2.33
    Minimum Class Complexity                      1.00
    Maximum Class Complexity                     15.00
  Average Complexity per Method                   1.41
    Minimum Method Complexity                     1.00
    Maximum Method Complexity                     6.00

Dependencies
  Global Accesses                                    0
    Global Constants                                 0 (0.00%)
    Global Variables                                 0 (0.00%)
    Super-Global Variables                           0 (0.00%)
  Attribute Accesses                               436
    Non-Static                                     436 (100.00%)
    Static                                           0 (0.00%)
  Method Calls                                     570
    Non-Static                                     412 (72.28%)
    Static                                         158 (27.72%)

Structure
  Namespaces                                        15
  Interfaces                                         0
  Traits                                             0
  Classes                                           72
    Abstract Classes                                 0 (0.00%)
    Concrete Classes                                72 (100.00%)
  Methods                                          233
    Scope
      Non-Static Methods                           226 (97.00%)
      Static Methods                                 7 (3.00%)
    Visibility
      Public Methods                               194 (83.26%)
      Non-Public Methods                            39 (16.74%)
  Functions                                         24
    Named Functions                                  0 (0.00%)
    Anonymous Functions                             24 (100.00%)
  Constants                                          0
    Global Constants                                 0 (0.00%)
    Class Constants                                  0 (0.00%)
    

不過你可能也感覺到,這個 phploc 的一大不便之處就是,目前來說,他還不能把相關(guān)的測試結(jié)果可視化或者說自定義檢測的最高復雜度。所以,PhpMetrics 就應(yīng)運而生了。

使用 PhpMetrics

首先需要說明的是,PhpMetrics 可以更深入到你的代碼中,并且會生成一個 html 文件作為分析的結(jié)果,這樣我們查看檢測結(jié)果就會非常的直觀。

安裝 PhpMetrics 也是可以直接 composer 全局安裝:

composer global require "phpmetrics/phpmetrics"

安裝完畢之后,可以這樣來運行命令分析代碼復雜度:

phpmetrics --report-html=report.html ./app

等待 phpmetrics 運行結(jié)束,用 Chrome 打開 report.html 就可以查看相對應(yīng)的結(jié)果,大概是這個樣子:

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/23056.html

相關(guān)文章

  • 這幾個編碼小技巧將令你 PHP 代碼更加簡潔

    摘要:類型檢測類型檢測也是一種讓代碼簡潔的小技巧。上文中,我們只是嘗試搜集了一些例子,在這些例子里,你只需做出一點小的努力,就可以讓你的代碼變得更好更簡潔。 showImg(https://segmentfault.com/img/remote/1460000013847223); 保持代碼簡潔和高可讀性遠遠要比我們想象的要難,有時候甚至比持續(xù)架構(gòu)設(shè)計都要難。這里收集了一些可能對你重構(gòu)代碼有...

    Pikachu 評論0 收藏0
  • [PHP 安全] pcc —— PHP 安全配置檢測工具

    摘要:文章轉(zhuǎn)自背景在安全測試中最單調(diào)乏味的任務(wù)之一就是檢查不安全的配置項。在下文中,該腳本被稱作安全配置項檢查器,或者。保障措施大多數(shù)情況下,最好是自己來關(guān)注與安全性相關(guān)的問題比如的配置。腳本已實現(xiàn)下列保障措施檢查腳本在非環(huán)境中只能工作兩天。 showImg(https://segmentfault.com/img/remote/1460000018912228); 文章轉(zhuǎn)自:https:/...

    draveness 評論0 收藏0
  • thinkphp源碼分析(一)—開門篇

    摘要:源碼分析開門篇生命周期入口文件用戶發(fā)起的請求都會經(jīng)過應(yīng)用的入口文件,通常是文件。注冊錯誤和異常機制執(zhí)行注冊錯誤和異常處理機制。由三部分組成應(yīng)用關(guān)閉方法錯誤處理方法異常處理方法注冊應(yīng)用關(guān)閉方法是為了便于攔截一些系統(tǒng)錯誤。 源碼分析—開門篇 thinkphp生命周期 1、入口文件 用戶發(fā)起的請求都會經(jīng)過應(yīng)用的入口文件,通常是 ==public/index.php==文件。當然,你也可以更改...

    flybywind 評論0 收藏0
  • php 學習指南及技術(shù)干貨

    摘要:安全生成安全的隨機數(shù),加密數(shù)據(jù),掃描漏洞的庫一個兼容標準的過濾器一個生成隨機數(shù)和字符串的庫使用生成隨機數(shù)的庫一個安全庫一個純安全通信庫一個簡單的鍵值加密存儲庫一個結(jié)構(gòu)化的安全層一個試驗的面向?qū)ο蟮陌b庫一個掃描文件安全的庫 Security 安全 生成安全的隨機數(shù),加密數(shù)據(jù),掃描漏洞的庫 HTML Purifier-一個兼容標準的HTML過濾器 RandomLib-一個生成隨機數(shù)和字...

    lifefriend_007 評論0 收藏0

發(fā)表評論

0條評論

or0fun

|高級講師

TA的文章

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