PHP

Language-specific information about the way that SonarQube Cloud supports the analysis of PHP.

Supported versions

The level of support for a language is defined as follows:

  • Fully supported: Analysis will complete. All the language features are understood and examined.

  • Supported: Most language features are understood and examined but the version includes unsupported features. Analysis might break or provide incomplete results.

Versions 5.0 to 8.4 are fully supported.

Supported frameworks and tools

Laravel, Symfony, WordPress, Laminas, and Zend.

Language-specific properties

To discover and update the PHP-specific properties, navigate in SonarQube Cloud to Your Project > Administration > General Settings > Languages > PHP. See the Analysis parameters page for more information about specific properties.

Turning issues off

The best way to deactivate an individual issue you don’t intend to fix is to mark it as accepted or false positive through the Sonar UI.

If you need to deactivate a rule (or all rules) for an entire file, then issue exclusions are the way to go. But if you only want to deactivate a rule across a subset of a file - all the lines of a method or a class - you can use a PHPDoc comment /* @SuppressWarnings("php:S2077") */ or an attribute #[SuppressWarnings("php:S2077")].

Analyze php.ini files

The PHP analyzer can analyze php.ini files with some specific rules (if these rules are activated in your quality profile). php.ini files must be part of the project you are analyzing, meaning the php.ini files have to be inside the directories listed in sonar.sources. Rules targeting php.ini files can be quickly identified through the "php-ini" tag set on them.

Last updated

Was this helpful?