Ignorowanie nieużywanego parametru za pomocą sniffera kodu

11

Korzystam z codeniffer ze standardem EcgM2 na moim niestandardowym rozszerzeniu i otrzymuję ostrzeżenie

Parametr metody $contextnigdy nie jest używany

dla InstallSchema.phppliku.
Jak mogę usunąć to ostrzeżenie?
Moja metoda wygląda następująco (zauważ SuppressWarningsna górze):

/**
 * {@inheritdoc}
 * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
 * @SuppressWarnings(PHPMD.UnusedFormalParameter)
 */
public function install(SchemaSetupInterface $setup, ModuleContextInterface $context)
{
    //my install script here that does not use the parameter $context
}
Marius
źródło

Odpowiedzi:

9

Udało mi się ukryć pod dywan dywan w ten sposób:

// @codingStandardsIgnoreStart
public function install(SchemaSetupInterface $setup, ModuleContextInterface $context) 
{
// @codingStandardsIgnoreEnd
....
}

Nie jestem z tego dumny, ale działa.

Marius
źródło
dodanie // @codingStandardsIgnoreEndpodpisu metody i otwierającego nawiasu klamrowego spowoduje ostrzeżenie phpcs
Radu,
dobrze. można go dodać po klamrze otwierającej. Zredagowałem odpowiedź.
Marius
4

Zaktualizuj phpcs (squizlabs / PHP_CodeSniffer) do najnowszej wersji (v3.2.3 na 2017-03-06) i użyj:

/**
 * {@inheritdoc}
 */
// phpcs:ignore Generic.CodeAnalysis.UnusedFunctionParameter
public function install(SchemaSetupInterface $setup, ModuleContextInterface $context)
{
    //my install script here that does not use the parameter $context
}
lubić muzykę
źródło
2

Jestem prawie pewien, że regułą pomijania, której będziesz musiał użyć, jest:

Generic.CodeAnalysis.UnusedFunctionParameter

Więc powinien to być kod do użycia w twoim Docblock PHP:

@SuppressWarnings(Generic.CodeAnalysis.UnusedFunctionParameter)
Raphael at Digital Pianism
źródło
dzięki za wykopanie tego, ale to nie ma żadnego efektu
Marius
1
@Marius hmm to denerwujące
Raphael z Digital Pianism
nadal nie działa :(
Haim
1

Myślę, że to właściwy sposób:

/**
 * {@inheritdoc}
 * phpcs:disable Generic.CodeAnalysis.UnusedFunctionParameter
 */
public function install(SchemaSetupInterface $setup, ModuleContextInterface $context)
{
    //my install script here that does not use the parameter $context
}
Giacomo Moscardini
źródło
0

Na wszelki wypadek, jeśli ktoś ma taką samą konfigurację, działa dla mnie, ale z SuppressWarnings OP! Żadna inna odpowiedź nie zadziałała.

Tak @SuppressWarnings(PHPMD.UnusedFormalParameter)naprawdę działa z PHPMD.

loic_adexos
źródło