unused public
1.0.0

很容易找到未使用的私人课程元素,因为它们在班级本身中没有使用。但是,公共方法/属性/常数呢?
final class Book
{
public function getTitle(): string
{
// ...
}
- public function getSubtitle(): string
- {
- // ...
- }
}我们如何检测未使用的公共元素?
这正是这个软件包的作用。
该技术对于私人项目非常有用,并且要检测出意外使用的public修饰符,该修饰符应仅按照本地的方式更改为private 。
composer require tomasvotruba/unused-public --dev该软件包可用于PHP 7.2+版本。
使用PHPSTAN扩展安装程序,一切都可以运行。
用简单的配置自行启用每个项目:
# phpstan.neon
parameters :
unused_public :
methods : true
properties : true
constants : true您有数百种公共方法吗?您没有时间检查它们,但想逐步处理它们?
设置最大允许%配置:
# phpstan.neon
parameters :
unused_public :
methods : 2.5这意味着允许所有公共方法中最多2.5%的未使用:
您是否要检查不应删除但要转变为private / protected局部方法调用?
# phpstan.neon
parameters :
unused_public :
local_methods : true 某些方法仅在树枝或叶片模板中使用,并且可以作为未使用的误报报告。
{{ book. getTitle () }}我们如何排除它们?在配置中添加您的树枝或刀片模板目录以排除方法名称:
# phpstan.neon
parameters :
unused_public :
template_paths :
- templates 在某些情况下,规则报告误报:
开源供应商设计将由项目使用的公共API。元素是否据报道是未使用的,但实际上是被设计为公开使用的?
用@api注释标记类或元素以跳过它:
final class Book
{
/**
* @api
*/
public function getName ()
{
return $ this -> name ;
}
}