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 |
---|---|
| Run inspections only on local uncommitted changes. |
| Specify the full path to the subdirectory if you don't want to inspect the whole project. |
| Specify the format of the output file with inspection results: |
| Set the verbosity level of the output:
|
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
Open the project for which you ran the inspection.
From the main menu, choose
Select the directory with the inspection results and click OK.