PhpStorm 2021.2 Help

Run code inspections from the command line

PhpStorm runs code inspections to find and highlight syntax errors, dead code, possible bugs, bad coding style, and other problems. You can also run all the configured inspections for a specific project from the command line and store the results as an XML, JSON, or plain text file with a report.

The command-line inspector launches an instance of PhpStorm in the background where it runs the inspections. It will not work if another instance of PhpStorm is already running. In this case, you can use inspections in the running instance. Use the command-line inspector for automated regular code analysis of large projects with many contributors.

You can find the executable for running PhpStorm in the installation directory under bin. To use this executable as the command-line launcher, add it to your system PATH as described in Command-line interface.

Syntax
phpstorm64.exe inspect <project> <inspection-profile> <output> [<options>]
Example

Inspect the C:\MyProject\src directory of the C:\MyProject project using the C:\MyProject\.idea\inspectionProfiles\MyProfile.xml profile with maximum verbosity, and save results to an XML file under C:\MyProject\InspectionResults:

phpstorm64.exe inspect C:\MyProject C:\MyProject\.idea\inspectionProfiles\MyProfile.xml C:\MyProject\InspectionResults -v2 -d C:\MyProject\src

PhpStorm includes a script for running the command-line code inspector. By default, it is located in the application package: PhpStorm.app/Contents/bin/inspect.sh

Syntax
inspect.sh <project> <inspection-profile> <output> [<options>]
Example

Inspect the ~/MyProject/src directory of the ~/MyProject project using the ~/MyProject/.idea/inspectionProfiles/MyProfile.xml profile with maximum verbosity, and save results to an XML file under ~/MyProject/InspectionResults:

inspect.sh ~/MyProject ~/MyProject/.idea/inspectionProfiles/MyProfile.xml ~/MyProject/InspectionResults -v2 -d ~/MyProject/src

You can find the script for running PhpStorm in the installation directory under bin. To use this script as the command-line launcher, add it to your system PATH as described in Command-line interface.

Syntax
phpstorm.sh inspect <project> <inspection-profile> <output> [<options>]
Example

Inspect the ~/MyProject/src directory of the ~/MyProject project using the ~/MyProject/.idea/inspectionProfiles/MyProfile.xml profile with maximum verbosity, and save results to an XML file under ~/MyProject/InspectionResults:

phpstorm.sh inspect ~/MyProject ~/MyProject/.idea/inspectionProfiles/MyProfile.xml ~/MyProject/InspectionResults -v2 -d ~/MyProject/src

Options

Option

Description

-changes

Run inspections only on local uncommitted changes.

-d

Specify the full path to the subdirectory if you don't want to inspect the whole project.

-format

Specify the format of the output file with inspection results: xml (default), json, or plain.

-v

Set the verbosity level of the output:

  • -v0 is the default low verbosity.

  • -v1 is medium verbosity.

  • -v2 is maximum verbosity.

Inspection profiles

An inspection profile is an .xml file that specifies enabled inspections and their options.

By default, project inspection profiles are stored in the project directory: .idea/inspectionProfiles.

Global IDE inspection profiles are stored in the IDE configuration directory under inspection.

Inspection results

You can open the generated XML file with inspection results in PhpStorm or any text editor as a regular file. However, it is more convenient to analyze it using the Offline View of the Inspection results tool window:

View inspection results

  1. Open the project for which you ran the inspection.

  2. From the main menu, choose Code | Analyze Code | View Offline Inspection Results

  3. Select the directory with the inspection results and click OK.

Last modified: 22 November 2021