0

我有以下片段:

protected function sendEmail($email)
{
    extract($email);

    $this->transmail->locale($locale)
                    ->timezone($timezone)
                    ->template($template)
                    ->subject($subject)
                    ->send($header, $params);
}

此代码完美运行(此处为完整源代码)。但是,我想确保在旅途中遵循一些好的做法。我现在收到 [一些 CodeClimate 警告] (PHPMD)( https://codeclimate.com/github/timegridio/timegrid/app/Listeners/SendBookingNotification.php ):

  • 避免使用未使用的局部变量,例如“$locale”。
  • 避免使用未使用的局部变量,例如“$timezone”。
  • 避免使用未使用的局部变量,例如“$template”。
  • 避免使用未使用的局部变量,例如“$subject”。
  • 避免使用未使用的局部变量,例如“$header”。
  • 避免使用未使用的局部变量,例如“$params”。

哪些是优雅的方法?

list()我应该用或类似的东西明确声明变量吗?

提前致谢

4

1 回答 1

1

您可以使用 doc 注释注释从 PHPMD 中排除方法或类,或抑制某些软件工件的特殊规则。

/**
 * This will suppress all the PMD warnings in
 * this class.
 *
 * @SuppressWarnings(PHPMD)
 */
class Bar {
    function  foo() {
        $baz = 23;
    }
}

或者您可以使用这样的注释来抑制一条规则:

/**
 *
 */
class Bar {
    /**
     * This will suppress UnusedLocalVariable
     * warnings in this method
     *
     * @SuppressWarnings(PHPMD.UnusedLocalVariable)
     */
    public function foo() {
        $baz = 42;
    }
}

来源https://phpmd.org/documentation/suppress-warnings.html


不使用 PHPMD 的 PHPStorm 用户可以使用

/** @noinspection RULE */

在哪里可以找到规则here

https://gist.github.com/discordier/ed4b9cba14652e7212f5

于 2016-12-04T12:46:57.083 回答