PHP应用代码复杂度检测使用方法
发布:smiling 来源: PHP粉丝网 添加日期:2023-10-16 17:54:58 浏览: 评论:0
如果说你想知道一个 PHP 项目的代码复杂度是什么样子的,我推荐你可以使用 phploc 和 PhpMetrics 来检测一下。
使用 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 就可以查看相对应的结果,大概是这个样子:
Tags: PHP复杂度检测
- 上一篇:memcached使用中避坑实例汇总
- 下一篇:最后一页

推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)