Skip to content

PHP linting

The VIP Code Analysis Bot runs the PHP linter, bundled with PHP (php -l), to highlight code syntax and compilation errors.

By default, only modified PHP files in a repository’s pull request are PHP linted by the Bot. The Bot can be configured to PHP lint all files if needed.

Syntax checks

VIP configures the Bot to check the syntax of each altered file, as syntax errors are often fatal. The Bot safeguards against such fatal errors as they usually need to be addressed before deployment.

In some cases, code might intentionally contain syntax errors, such as files that are part of unit-test packages. Customizing the Bot’s behavior is useful to prevent that code from being unnecessarily highlighted during PHP linting.

An example of feedback from the Bot highlighting errors found by PHP linting

PHP versions

VIP has configured the Bot to PHP lint each file based on the PHP versions used in the environments to which the repository deploys.

A repository can deploy to more than one application, and an application on VIP typically includes multiple environments, which can run different versions of PHP. For example, if a particular repository deploys to two environments, one using PHP 8.0 and the other PHP 8.2, files will be PHP linted using both PHP 8.0 and PHP 8.2.

For repositories that deploy to applications with environments where only PHP version 8.0 is running, all PHP files updated or added by pull requests will be linted using both PHP 8.0 and 8.2. This is done to prepare applications for the upgrade to PHP 8.2 and ensures that any incompatibilities in new or altered code due to language changes in PHP 8.2 will be preemptively noted by the VIP Code Analysis Bot.

Last updated: December 22, 2023

Relevant to

  • WordPress