「フック実装は@paramドキュメントを複製してはいけません。」を修正する方法?


10

PhpStormを使用して、カスタムモジュールのコードのクリーンアップを実験しています。次の関数の場合、この警告が表示されます。

フック実装は@paramドキュメントを複製するべきではありません。

/**
 * Implements hook_field_widget_form_alter().
 *
 * @param array $element
 * @param array $form_state
 * @param array $context
 */
function mymodule_field_widget_form_alter(&$element, $form_state, $context) {
  if ($context['widget'] instanceof \Drupal\text\Plugin\Field\FieldWidget\TextareaWidget) {
    $element['#after_build'][] = '_mymodule_remove_textarea_help';
  }
}

これを修正するにはどうすればよいですか?@paramコメントを削除する必要があると思ったのですが、削除すると、PhpStormはparamコメントがないと不平を言います。


2
「設定->エディタ->インスペクション-> PHP-> PHPDoc-> PHPDocコメントがありません」をオフにしますか?一般的な答えは、PHPStormのドキュメント検査をDrupalのドキュメント標準に一致させることです
Clive

3
問題はdrupalコーディング標準とphpコーディング標準をチェックすることです。一般的なphpコーディング標準のスニファーを非アクティブにし、カスタムdrupalコーディング標準を使用する必要があります
sgoelz

@Cliveはここで正しい答えを持っています。そのエラーは、コーディング標準とは関係がなく、PHPStormの組み込み検査とはすべて関係があります:)
Chapabu

受け入れられたオーナはIDEで問題を解決しますが、コーディング標準を確認しても問題は解決しません。私の解決策を見てください。
Adrian Cid Almaguer 2017

回答:


5

問題は、フックを実装していて、これ以上書く必要がない場合です。

/**
 * Implements hook_field_widget_form_alter().
 */

hook_field_widget_form_alter()定義にはすべての情報が含まれるので、常にフック実装にこれだけを書き込んでください。

/**
 * Implements hook_hook_name().
 */

あなたの場合:

/**
 * Implements hook_field_widget_form_alter().
 */
function mymodule_field_widget_form_alter(&$element, $form_state, $context) {
  if ($context['widget'] instanceof \Drupal\text\Plugin\Field\FieldWidget\TextareaWidget) {
    $element['#after_build'][] = '_mymodule_remove_textarea_help';
  }
}

1

後世のための答えを追加します。クライブのコメントによると:

「PHPDocコメントの欠落」をチェックする組み込みのPHPStormインスペクションをオフにする必要があります@param。そうすると、ブロックを安全に削除できます。

ここに画像の説明を入力してください


1
反対投票者は何が悪いのかを説明して、答えを修正できるようにしますか?それとも単に「tat for tat」の反対投票ですか?
Chapabu 2016年

1
これでIDEの問題は解決しますが、コーディング標準を確認しても問題は解決しません。私の解決策を見てください。
Adrian Cid Almaguer 2017

0

他の人が言ったように、プロジェクトをDrupalプロジェクトとして扱うには、PHPStorm構成を設定する必要があります。

次に、Coderを使い始めます。

これらのパッケージをインストールしたら、それらをPHPStormに接続して標準システムを設定するか、コマンドラインからレポートを実行します。これにより、PHPStormに同梱されている一般的な標準ではなく、Drupalコーディング標準に沿った環境がよりインラインになります。


1
反対票は私のものでした。私は「カーペット爆弾」は何もしませんでした。答えが間違っていたので、私は答えを否定しました。
Chapabu

2
何という失礼な行為。
Jimmy Ko
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.