juliangut/php-codesniffer-custom-sniffs

PHP_CodeSniffer custom sniffs

Fund package maintenance!
juliangut

Installs: 4 472

Dependents: 1

Suggesters: 0

Security: 0

Stars: 0

Watchers: 2

Forks: 0

Open Issues: 0

Type:phpcodesniffer-standard

1.2 2024-03-05 14:30 UTC

This package is auto-updated.

Last update: 2024-04-05 20:31:22 UTC


README

PHP version Latest Version License

Total Downloads Monthly Downloads

php-codesniffer-custom-sniffs

Custom sniffs for PHP_CodeSniffer

Installation

Composer

composer require --dev juliangut/php-codesniffer-custom-sniffs

Usage

It is recommended to also install dealerdirect/phpcodesniffer-composer-installer to avoid needing to declare paths in your ruleset definition file

Complete ruleset

<?xml version="1.0"?>
<ruleset name="MyProject">
    <rule ref="JgutCodingStandard"/>

    <!-- if dealerdirect/phpcodesniffer-composer-installer is not installed-->
    <rule ref="vendor/juliangut/php-codesniffer-custom-sniffs/src/JgutCodingStandard/ruleset.xml" /><!-- path relative to your ruleset definition file -->
</ruleset>

Only certain sniffs

<?xml version="1.0"?>
<ruleset name="MyProject">
    <!-- if dealerdirect/phpcodesniffer-composer-installer is not installed-->
    <config name="installed_paths" value="../../juliangut/php-codesniffer-custom-sniffs"/><!-- path relative to PHPCS source location on vendor directory -->

    <rule ref="JgutCodingStandard.NamingConventions.CamelCapsFunctionName" />
    <rule ref="JgutCodingStandard.NamingConventions.CamelCapsVariableName">
        <properties>
            <property name="strict" value="false" />
        </properties>
    </rule>
</ruleset>

Sniffs

CodeAnalysis

EmptyStatementSniff

There should not be empty statements

 <?php
 
 if (\PHP_VERSION_ID >= 80_000) {
+    echo 'do something';
 }
Configuration

catchIgnoreComment (string), catch statements may be allowed to be empty. Add a comment with the content of this variable, by default it's set to @ignoreException

 <?php
 
 try {
     curl_close(null);
 } catch (\Throwable $exception) {
+    // @ignoreException
 }

NamingConventions

CamelCapsFunctionNameSniff

Function and method names should be written in camelCaps

 <?php
 
 class Foo
 {
-    public function max_length(): int
+    public function maxLength(): int
     {
     }
 }
Configuration

strict (bool), Set to false in order to allow two consecutive uppercase letters (CamelCaps format does not allow two uppercase letters next to each other)

CamelCapsVariableNameSniff

Variable and property names should be written un camelCaps

 <?php
 
 class Foo
 {
-    private bool $max_length = 255;
+    private bool $maxLength = 255;
 }
Configuration

strict (bool), Set to false in order to allow two consecutive uppercase letters (CamelCaps format does not allow two uppercase letters next to each other)

Contributing

Found a bug or have a feature request? Please open a new issue. Have a look at existing issues before.

See file CONTRIBUTING.md

License

See file LICENSE included with the source code for a copy of the license terms.