Inspectopedia Help

Complex function should be refactored

Reports the functions or methods that are too complex.

Complexity is evaluated based on four metrics:

  • Lines of code — the number of code lines in a function/method (less is better)

  • Maximum Nesting depth — the maximum number of nested statements in a function/method body (less is better)

  • Cyclomatic complexity — the function/method cyclomatic complexity (less is better)

  • Number of variables — the number of variables used in function/method body

Locating this inspection

By ID

Can be used to locate inspection in e.g. Qodana configuration files, where you can quickly enable or disable it, or adjust its settings.

PhpComplexFunctionInspection
Via Settings dialog

Path to the inspection settings via IntelliJ Platform IDE Settings dialog, when you need to adjust inspection settings directly from your IDE.

Settings or Preferences | Editor | Inspections | PHP | Refactoring opportunities

Inspection options

Here you can find the description of settings available for the Complex function should be refactored inspection, and the reference of their default values.

Lines of code

150

Max nesting depth

4

Cyclomatic complexity

15

Number of used variables

8

Availability

By default bundled with

PhpStorm 2024.1, Qodana for PHP 2024.1,

Can be installed with plugin

PHP Architecture, 241.SNAPSHOT

Last modified: 18 June 2024