php 7 — разрешить нехватку места после скобок функции, если в PHP есть подсказка типа возврата (CodeSniffer)

Я использую Стандарт кодирования MediaWiki за php_codesniffer, Дело в том, что создан для версии PHP <7.0.0, Давайте возьмем следующий неформатированный фрагмент кода:

function test(){}

Сниффер сообщит об ошибке, то есть необходимо пространство между ) а также { (правило Generic.Functions.OpeningFunctionBraceKernighanRitchie.SpaceAfterBracket)
Теперь все в порядке, это нормально (по крайней мере, для меня), чтобы написать

function test() {}

Но когда дело доходит до PHP 7 и функция имеет подсказку типа возврата, я хочу, чтобы она была отформатирована следующим образом

function test(): string {}

Так что нет места между ) а также :, но промежутки между string и другие жетоны там. Какое правило я должен написать, чтобы достичь этого?

2

Решение

В Slevomat / CodingStandard уже есть нюх на это: https://github.com/slevomat/coding-standard/blob/master/README.md#slevomatcodingstandardtypehintstypehintdeclaration-

Это высококачественная упаковка, которую я использую более года. У них также есть готовая ветка для 3.0. Также проверьте также сниффы, они классные и помогают с рефакторингом в PHP 7.0 и 7.1.

1

Другие решения

Я думаю, что вы можете редактировать этот класс:

https://github.com/squizlabs/PHP_CodeSniffer/blob/master/CodeSniffer/Standards/Generic/Sniffs/Functions/OpeningFunctionBraceKernighanRitchieSniff.php

Если вы добавите простое условие для ‘):’, то я думаю, что ваша проблема будет решена.

-1

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector