【Laravel】開発に便利なVSCodeの設定や拡張機能

ゆーたろー

こんにちは、ゆーたろーです。

HRTechベンチャーのエンジニアです。
TypeScript/Vue.js(Nuxt.js)/React/Next.js/PHP/LaravelでWebアプリケーションの開発を行っています。

・プログラミングスクールメンター
・神戸で勉強会「つながる勉強会」を運営
・神戸メインのグルメインスタ運営

など色々やっています。1児のパパです。

Laravelでの開発に便利だと感じているVSCodeの設定や拡張機能を少量ですがまとめます。

個人差はあると思いますが、「開発効率上がりそう!」と思ったものはぜひ開発環境に取り入れていただけたらと思います。

コマンド操作はMacベースで書いています。

目次

VSCodeの設定

まずは設定から。

PHP Suggest : Basic

PHPのコード補完をしてくれるVSCodeの設定です。

デフォルトではチェックが入っている(ON)と思いますが、もし入ってなかったらONしておいても良いです。

僕はこれをOFFにしています。

その理由としては後ほどご紹介するPHPの超便利拡張機能で強力なコード補完が使えるので、補完で出てくる候補をその拡張機能のものだけにするためです。

なので、この記事を最後まで読んでいただき、同じ環境にするのであればここはOFFで問題ありません。

ゆーたろー

これをONにして後述の拡張機能を入れても別にバッティングしてうまく動作しない事はないので別にONでも良いっちゃ良いと思いますw

Word Separators

プログラミングしていく上でタイポを無くすために既存の変数名、クラス名などを使う場合は毎回手入力するのではなくコピペするべきだと個人的には思っています。

VSCodeでは特定のコードの上にポインターを置いた状態で

  • ダブルタップ
  • command + d

をすることでそこの単語を一気に選択した状態にすることができるのでそのままコピー→使いたいところにペーストが簡単に行えます。
(うまく言葉で説明できない…)

デフォルトのVSCodeの設定では以下のコードで$sampleの上でダブルアップ→コピーを行ってもコピーできるのはsampleのみです。

<?php

$sample = "$は選択されない";

PHPでは変数名の頭に$をつけるので、毎回$を手入力するのはめんどくさい。

ということでVSCodeの設定項目の1つである、Word Separatorsから$を削除しましょう。

この設定項目はフォームに設定されている文字が区切り文字になるので、ここから$を消してあげることで$sampleの上でコピーした場合は、$sampleがコピーされます。

ちょっとしたことですが、結構便利です。

VSCodeの拡張機能

次は拡張機能です。入れるか入れないかで大きく開発効率が変わります。

PHP Intelephense

Laravel(というかPHP)開発では絶対に入れておいた方が良い拡張だと思っています。

この記事を書こうと思ったきっかけでもある下のツイートに書いているとおり、いわゆるメソッドジャンプ(メソッドを使っているところでcommandを押しながらホバー→クリックでメソッド定義元に飛べる)が使えるようになります。

定義元に飛べるのはメソッドだけでなく、変数、クラス(コントローラー、モデル、サービスなど)でも可能です。

エンジニアのキャリアをスタートしてすぐに職場の先輩からこの拡張機能とメソッドジャンプのやり方を教えてもらったのでPHPerだと当たり前なのかと思っていましたが、Twitterで意外と反応が大きかったので結構知らない人いるんだなと思いました。

(というわけで記事を書いていますw)

この拡張機能の機能は他にもあります(コード補完も強力です)が、

メソッドやクラスなどの定義元に一瞬で飛べる

というだけでも入れる価値はあります、というか必須です。

PHP Debug

これはXdebugをVSCode上から使えるようにするための拡張機能です。

詳しい導入方法は以下の記事にまとめていますが、個人的にPHP開発にXdebugは無くてはならないツールなのでこれは入れた方が良いと思います。

Laravel Snippets

Laravelのコード補完(主にファサード?)をしてくれる拡張機能です。

例えば、routes/web.phpでRoute::と打つと、色々な候補が出てきてくれるので、Route::getを選択すると

Route::get('users/{id}', function ($id) {
    
});

このような雛形を準備してくれます。

Laravelでの開発ではファサードが活躍する場面は結構あるので、Laravel Snippetsさんは入れておいて損はないかと思います。

最後に

PHP開発のエディターとしてはPHPStorm(有料)が有名で人気ですが、VSCodeでも割と快適な開発環境が構築できると思っています。

(PHPStormを使ったことがないので、使ったら「PHPStorm最高!PHPerはみんなこれ使おう!」とか言うかもしれませんw)

この記事でご紹介した環境がベストプラクティスではありませんので、この記事に書いているもの以外でオススメの設定や拡張機能があればぜひ教えてください!

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!

この記事を書いた人

上場グループのHRTechベンチャーで働くWebエンジニアです。
新卒で入社した大手重工メーカを4年で退職し、2020年4月からエンジニアとキャリアチェンジしました。

仕事ではTypeScript/Vue.js(Nuxt.js)/Laravelを主に使っています。

プログラミングスクールの講師やデザイン関連のお仕事もさせてもらっています。

神戸で「つながる勉強会」という勉強会を月1で運営しています。
https://tsunagaru-kobe.connpass.com/

お仕事のご依頼、ご相談はお問い合わせページもしくはTwitterのDMからお願いします。

コメント

コメントする

目次
閉じる