zebra-north / phpcs-short-types
Require the use of short scalar type names (bool, int) in comments, instead of long names (boolean, integer).
v1.1.0
2026-03-04 10:20 UTC
Requires
- php: >=7.0
README
PHP Codesniffer requires that scalar types be written in their long form, eg. boolean or integer.
As of PHP 7+, scalars are required to be written in their short form, eg. bool or int.
This patch allows you to use the short form in doc-block comments.
Before:
/** * Test function. * * @param integer $test A numeric argument. * * @return boolean Returns true or false. */ function test(int $test): bool { return false; }
After:
/** * Test function. * * @param int $test A numeric argument. * * @return bool Returns true or false. */ function test(int $test): bool { return false; }
Errors Fixed
- Squiz.Commenting.FunctionComment.IncorrectParamVarName
- Expected "boolean" but found "bool" for parameter type
- Expected "integer" but found "int" for parameter type
- Squiz.Commenting.VariableComment.IncorrectVarType
- Expected "boolean" but found "bool" for @var tag in member variable comment
- Expected "integer" but found "int" for @var tag in member variable comment
- Squiz.Commenting.FunctionComment.InvalidReturn
- Expected "boolean" but found "bool" for function return type
- Expected "integer" but found "int" for function return type
Installation for CodeSniffer v4
- Install into composer with:
composer require --dev zebra-north/phpcs-short-types - Edit your project's
phpcs.xmlto replace:
Squiz.Commenting.FunctionCommentwithZebraNorth.Commenting.FunctionCommentSquiz.Commenting.VariableCommentwithZebraNorth.Commenting.VariableComment
- Edit your
CodeSniffer.conffile. Adjust the path if necessary.
<?php $phpCodeSnifferConfig = array ( 'installed_paths' => __DIR__ . '/../vendor/zebra-north/phpcs-short-types/ZebraNorth/', );
Installation for CodeSniffer v3
- Install into composer with:
composer require --dev zebra-north/phpcs-short-types - Edit your project's
phpcs.xmlto add a bootstrap file:
<?xml version="1.0"?> <ruleset> <arg name="bootstrap" value="vendor/zebra-north/phpcs-short-types/short-types.php"/> ... </ruleset>
Known Issues
This will not suggest bool/int if you have used boolean/integer - that would require patching PHP Codesniffer. A patch has been created, but not yet merged: