摘要:原文來自如果說你想知道一個項目的代碼復雜度是什么樣子的,我推薦你可以使用和來檢測一下。安裝也是可以直接全局安裝安裝完畢之后,可以這樣來運行命令分析代碼復雜度等待運行結束,用打開就可以查看相對應的結果,大概是這個樣子
原文來自:https://www.codecasts.com/blo...
如果說你想知道一個 PHP 項目的代碼復雜度是什么樣子的,我推薦你可以使用 phploc 和 PhpMetrics 來檢測一下。
1.使用 phploc這是一個標準的 composer package,不過我推薦大家可以直接使用 composer 全局安裝:
composer global require "phploc/phploc=*"
然后安裝完畢,你就可以使用 phploc 命令來檢測你的代碼復雜度了:
phploc ./app
比如上面這行代碼就是檢測你的項目中 app/ 目錄的代碼復雜度;如果是一個 Laravel 的項目的話,大概會是這個樣子的結果輸出:
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 的一大不便之處就是,目前來說,他還不能把相關的測試結果可視化或者說自定義檢測的最高復雜度。所以,PhpMetrics 就應運而生了。
使用 PhpMetrics首先需要說明的是,PhpMetrics 可以更深入到你的代碼中,并且會生成一個 html 文件作為分析的結果,這樣我們查看檢測結果就會非常的直觀。
安裝 PhpMetrics 也是可以直接 composer 全局安裝:
composer global require "phpmetrics/phpmetrics"
安裝完畢之后,可以這樣來運行命令分析代碼復雜度:
phpmetrics --report-html=report.html ./app
等待 phpmetrics 運行結束,用 Chrome 打開 report.html 就可以查看相對應的結果,大概是這個樣子:
文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/23056.html
摘要:類型檢測類型檢測也是一種讓代碼簡潔的小技巧。上文中,我們只是嘗試搜集了一些例子,在這些例子里,你只需做出一點小的努力,就可以讓你的代碼變得更好更簡潔。 showImg(https://segmentfault.com/img/remote/1460000013847223); 保持代碼簡潔和高可讀性遠遠要比我們想象的要難,有時候甚至比持續(xù)架構設計都要難。這里收集了一些可能對你重構代碼有...
摘要:文章轉自背景在安全測試中最單調(diào)乏味的任務之一就是檢查不安全的配置項。在下文中,該腳本被稱作安全配置項檢查器,或者。保障措施大多數(shù)情況下,最好是自己來關注與安全性相關的問題比如的配置。腳本已實現(xiàn)下列保障措施檢查腳本在非環(huán)境中只能工作兩天。 showImg(https://segmentfault.com/img/remote/1460000018912228); 文章轉自:https:/...
摘要:源碼分析開門篇生命周期入口文件用戶發(fā)起的請求都會經(jīng)過應用的入口文件,通常是文件。注冊錯誤和異常機制執(zhí)行注冊錯誤和異常處理機制。由三部分組成應用關閉方法錯誤處理方法異常處理方法注冊應用關閉方法是為了便于攔截一些系統(tǒng)錯誤。 源碼分析—開門篇 thinkphp生命周期 1、入口文件 用戶發(fā)起的請求都會經(jīng)過應用的入口文件,通常是 ==public/index.php==文件。當然,你也可以更改...
摘要:安全生成安全的隨機數(shù),加密數(shù)據(jù),掃描漏洞的庫一個兼容標準的過濾器一個生成隨機數(shù)和字符串的庫使用生成隨機數(shù)的庫一個安全庫一個純安全通信庫一個簡單的鍵值加密存儲庫一個結構化的安全層一個試驗的面向對象的包裝庫一個掃描文件安全的庫 Security 安全 生成安全的隨機數(shù),加密數(shù)據(jù),掃描漏洞的庫 HTML Purifier-一個兼容標準的HTML過濾器 RandomLib-一個生成隨機數(shù)和字...
閱讀 1951·2021-10-12 10:12
閱讀 3078·2019-08-30 15:44
閱讀 848·2019-08-30 15:43
閱讀 3000·2019-08-30 14:02
閱讀 2085·2019-08-30 12:54
閱讀 3506·2019-08-26 17:05
閱讀 1988·2019-08-26 13:34
閱讀 1060·2019-08-26 11:54