Skip to content

VIP Code Analysis Bot

PHP linting

The VIP Code Analysis Bot runs the PHP linter (php -l) bundled with PHP, 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 syntax check each altered file, as syntax errors are often fatal. The Bot acts as a safeguard 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 in those cases 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 every PHP version used by the environments to which the repository being analyzed deploys.

A repository can deploy to more than one application, and an application on VIP typically includes more than one environment. It is possible for those environments to run different versions of PHP. For example, if a particular repository deploys to two environments, one using PHP 7.4 and the other PHP 8.0, files will be PHP linted using both PHP 7.4 and PHP 8.0.

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

Last updated: May 25, 2022