3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

VSCode + Laravel + IntelphenseでFacadesが認識されないことの対策

Posted at

はじめに

 こちらの記事を見ていただいている皆様、PHPフレームワークのLaravel開発、どのようなIDEを利用されておりますでしょうか?
 私はVSCodeIntelephenseを最低限入れて、コーディングを行ってます。
 
 このLaravelには

  • ログを記録するためのLog Facades
  • DB接続のためのDB Facades

など、クラスインスタンス生成不要で、静的メソッドのように呼び出しが可能なFacades機能があります。
この Facadesは、useを利用せずに呼び出すことが可能な機能となります。

 ただ、Intelephense Ver.1.3以上の場合、 Facadesを検知しきれないためか図のように赤線を引かれてしまいます。これでは、記法エラーなのかIntelephenseの警告なのかわからなくなってしまいます。
スクリーンショット 2023-03-06 13.02.55.png

 今回はこの赤線をIntelephenseに引かせないためのパッケージ紹介となります。

この記事の目的

  • IntelephenseがFacadesを検知できないなどで出す警告を抑止すること

対象環境

  • VSCode
  • Intelephense(Ver 1.3以降)
  • Laravel(筆者の動作確認環境は8以上)

結論

laravel-ide-helperを導入する

laravel-ide-helperとは

 公式サイトも参考にまとめると、「Intelephenseが正確なオートコンプリートを提供できるように補助するヘルパーファイルを作成するライブラリ」です。
 
 先ほどの警告が出た図であればこのライブラリ導入とヘルパーファイルの作成すると図のようにワーニングが消えました。
スクリーンショット 2023-03-06 13.03.18.png

さらに、カーソルを合わせると、クラス参照のダイアログも出ました。
スクリーンショット 2023-03-06 13.03.29.png

導入手順及び利用方法

以下、公式サイトより、ざっくりと導入手順とhelperファイルの作成手順を記載します。(前提は、「すでにLaravelプロジェクトが存在する」となります。未作成の場合はLaravel公式のインストールガイドより作成してください。)

(1) 下記コマンドでパッケージを導入する(開発用であるため「--dev」でインストールします)
composer require --dev barryvdh/laravel-ide-helper
(2) 以下のコマンドでhelperファイルを作成
php artisan ide-helper:generate

以上のコマンドでFacadesのオートコンプリートが利用できるようになったはずです。

終わりに

このパッケージ導入で煩わしいFacadesの警告が消えるようになったかと思います。
この記事ではVSCodeで開発する人の助けとなれば幸いです。

余談

PHPStormを利用すると、最初から反応するという話を聞きました。 そうであればとても強力なツールだなと思います。

参考・参照

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?