🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# 配置检查严重性 在这个页面中: * [基础](#基础) * [改变检查的严重性级别](#改变检查的严重性级别) * [为不同范围改变检查的严重性级别](#为不同范围改变检查的严重性级别) * [改变指定严重性级别的高亮样式](#改变指定严重性级别的高亮样式) * [定义定制的严重性级别](#定义定制的严重性级别) ## <span id='基础'>基础</span> 检查严重性表示通过检查发现的代码问题对项目有多重要的影响并决定发现的问题应该在编辑器中如何显示。默认的,每个检查有以下严重性级别: * **服务器问题**![服务器问题](http://image.jellychen.cn/uploads/2016/11/server_problem.png) * **打字错误**![打字错误](http://image.jellychen.cn/uploads/2016/11/typo.png) * **信息**![信息](http://image.jellychen.cn/uploads/2016/11/info.png) * **弱警告**![弱警告](http://image.jellychen.cn/uploads/2016/11/weak_warning.png) * **警告**![警告](http://image.jellychen.cn/uploads/2016/11/warning.png) * **错误**![错误](http://image.jellychen.cn/uploads/2016/11/error.png) 可以为每个检查项增加或减少严重性级别。也就是,可以强制PhpStorm显示警告作为错误或弱警告。按相同的方法,最初的弱警告可以显示为警告或错误,或者仅作为信息。 也可以配置每个严重性级别所高亮显示的颜色和字体。除此以外,可以创建自定义严重性级别并可以对指定检查设置它们。 如果需要,可以在[不同的范围内](/如何使用/常规指南/代码检查/改变区块顺序.md)对同一个检查设置不同的严重性级别。 所有上述的检查修改将储存在[检查设置](#检查配置文件)中当前选中的[检查配置文件](/如何使用/常规指南/代码检查/访问检查设置.md)并且被应用当配置文件被使用时。 ## <span id='改变检查的严重性级别'>改变检查的严重性级别</span> 1. 在[检查设置](/如何使用/常规指南/代码检查/访问检查设置.md),选择目标[配置文件](/如何使用/常规指南/代码检查/README.md#检查配置文件)。配置文件相关的检查显示为树形视图。 2. 选择目标检查。如果该检查被禁用,选择它旁边的复选框。 3. 从检查的上下文菜单或右边的**Serverity**选择框中选择想使用的严重性: ![选择严查的严重性级别](http://image.jellychen.cn/uploads/2016/11/severity_selector.png) 注意,默认值被改变的检查项和他们所属的分组节点高亮显示为蓝色。 4. 应用变更。修改的检查项将在使用时显示新的严重性级别。 在PHP环境中,**未定义的字段**和**未定义的方法**检查可能报告一些错误当实际上没有问题发生。这个会发生在尝试访问属性或给属性赋值,这些属性可能没有实际定义但引用的类包含get和set魔术方法。这应该不会报告错误因为这些方法每次调用或引用未定义的属性,然而,PhpStorm任然将它们作为错误或警告,基于你在检查页面设定的严重性级别。 要在这种情况下抑制未定义方法的报告,[重新配置检查严重性](/如何使用/常规指南/代码检查/配置检查严重性.md)。要做到这个,打开设置对话框的[检查](/参考/设置参数对话框/编辑器/检查.md)页面,点击列表中的检查名称并在选项区域选择**Downgrade severity if \_\_magic methods are present in class**。在这之后,这种情况下未定义的属性将比通常设置显示低一级的严重性,默认的,用信息级别来代替警告级别。 要抑制未定义字段不相干的报告,清空**Notify about access to a field via magic method**和**Notify about PHP dynamic field declaration**复选框。当这些复选框选中时,PhpStorm报告的错误甚至包含`__get()`和`__set()`魔术方法。 未定义的变量检查可以在设置对话框的检查页面中通过勾选复选框来配置。 * **在全局空间中检查**:选择复选框来运行检查不在函数方法,类和命名空间中的变量,也就是[全局空间](http://php.net/manual/en/language.namespaces.global.php) ![在全局空间中检查](http://image.jellychen.cn/uploads/2016/11/ps_undefined_var_global_space_on.png) * **报告可能没有定义的变量**:选择复选框来显示警告即使变量的定义没有明确的缺失。这种情况可能发生当这个变量在多个路径中使用并且一些地方不能到达,例如,`if()`语句: ![报告可能没有定义的变量](http://image.jellychen.cn/uploads/2016/11/ps_undefined_var_if_statement.png) * **忽略'include'和'require'语句**:抑制检查包含`include**和**require`语句的范围。如果复选框没有勾选,PhpStorm处理这种定义在类中的变量并通过这种语句引用的不会报告错误。如果复选框被选中,未定义的变量错误将报告。 ![忽略'include'和'require'语句](http://image.jellychen.cn/uploads/2016/11/undefined_variable_inspection.png) ## <span id='为不同范围改变检查的严重性级别'>为不同范围改变检查的严重性级别</span> 1. 选择目标配置文件和检查项 2. 点击下拉列表**In All Scopes**,并选择你想改变检查严重性的范围。 ![为不同范围改变检查的严重性级别](http://image.jellychen.cn/uploads/2016/11/inspection_for_scope1.png) PhpStorm为两种范围显示严重性:为选中范围的和其它范围。 3. 点击严重性下拉列表来选择范围并从下拉列表选择适当的严重性级别 ![选择严重性级别](http://image.jellychen.cn/uploads/2016/11/inspection_for_scope2.png) ## <span id='改变指定严重性级别的高亮样式'>改变指定严重性级别的高亮样式</span> 1. 执行以下操作之一: * 在[设置参数对话框](/如何使用/常规指南/配置项目和IDE设置/访问设置.md),选择**Editor | Colors & Fonts -> General**,然后选择想改变的严重性级别的样式。 * 在[检查设置](/如何使用/常规指南/代码检查/访问检查设置.md),选择想改变的检查项并选从**Severity**选择框中选择**Edit severities** 接下来,在打开的**Severities Editor**对话框,选择目标严重性级别并点击**Editor | Colors & Fonts** 任意一个方法将在打开的[颜色和字体](/参考/设置参数对话框/编辑器/颜色和字体.md)设置页面中看到严重性级别相关的样式。 2. 根据需要配置颜色和字体样式并应用更改、目前发现的问题的相应的严重性将在编辑器中高亮显示为当前[配置文件](/如何使用/常规指南/代码检查/README.md#检查配置文件)中修改的样式。 ## <span id='定义定制的严重性级别'>定义定制的严重性级别</span> 1. 在[检查设置](/如何使用/常规指南/代码检查/访问检查设置.md),选择目标检查项并在**Severity**选择框中选择**Edit severities**。 ![打开编辑严重性级别对话框](http://image.jellychen.cn/uploads/2016/11/edit_severities.png) 2. 在打开的**Severities Editor**对话框,点击![新增](http://image.jellychen.cn/uploads/2016/11/new.png) ![新增严重性级别](http://image.jellychen.cn/uploads/2016/11/severity_editor.png) 3. 在**New Highlight Severity**对话框中输入新的严重性级别的名称。 ![输入新的严重性级别的名称](http://image.jellychen.cn/uploads/2016/11/severity_highlight.png) 定制的严重性级别将添加到严重性列表中。 4. 使用严重性列表右侧的控件来指定新的严重性的颜色和字体 5. 使用**Up**![向上箭头](http://image.jellychen.cn/uploads/2016/11/arrowUp.png)和**Down**![向下箭头](http://image.jellychen.cn/uploads/2016/11/arrowDown.png)按钮来改变新严重性的优先级 6. 应用变更。现在新严重性级别将在当前配置文件的所有检查项中可用。你可以分配它到指定的检查项并在编辑器中获取相应的代码问题高亮的指定设置。 如果需要,可以在以后移除定制的严重性级别通过在**Severities Editor**对话框中选中它并点击![删除](http://image.jellychen.cn/uploads/2016/11/delete.png) 你不能改变预定义严重性级别的优先级或者移除它们。 # 另请参阅: 规程: * [访问检查设置](/如何使用/常规指南/代码检查/访问检查设置.md) 概念: * [代码检查](/如何使用/常规指南/代码检查/README.md)