Visual Studio CodeでLaravelをデバッグする設定【Vagrant編】

普段、Laravel書くのはPhpStormしか使ってないですが、VSCodeでのLaravelのリモートデバッグ設定をしてみました。

# マシンスペック
* Mac mini 2018
* macOS Catalina（10.15.x）
* Intel Core-i7 3.2GHz 6コア
* メモリ 32GB
* SSD 512GB

# リモート環境
* CentOS7.x
* MySQL5.7.x
* Nginx最新版
* PHP7.1.x
* Laravel5.6
* Vagrant
* Ansible

# やること
* VSCodeでLaravelをリモートデバッグする

#前提
* Visual Studio Codeはインストール済み
* Visual Studio Codeを日本語化済み

# リモート環境を準備

[VirtualBox＋Vagrant＋AnsibleでLaravel開発環境を構築その弐](https://qiita.com/_bobtabo_/items/e43736e4f1bc9d4297a0)

# デバッグするコードの準備

コード書くのが面倒だったら<font color="blue">**↓コチラ**</font>を使ってください

[Reactを初めて使ってCRUDアプリを作ってみた記録#サーバーの準備](https://qiita.com/_bobtabo_/items/05a28d23ad02a353ab1f#%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC%E3%81%AE%E6%BA%96%E5%82%99)

```
$ git clone https://github.com/bobtabo/laravel5.6.git laravel5
```

実行URL：http://laravel5.local/api/users

# リモートデバッグする

### 拡張機能をインストール

* 拡張機能を開きます
* <font color="blue">**php**</font>で検索します
* <font color="blue">**PHP Debug**</font>をインストールします

![スクリーンショット 2020-08-18 1.21.07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/111551/d962f069-1f7f-b5d2-57aa-2c7cb7b84594.png)

### デバッグ設定

1. デバッグするLaravelプロジェクトを開きます
2. 左メニューの好きな所を右クリックします
3. <font color="blue">**実行**</font>をクリックします
![スクリーンショット 2020-08-18 1.36.43.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/111551/604ca0e6-6fc9-e8b3-5a4f-b19f25c40113.png)
4. <font color="blue">**launch.json ファイルを作成します**</font>をクリックします
5. <font color="blue">**PHP**</font>をクリックします
![スクリーンショット 2020-08-18 1.45.02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/111551/dd2a4b5b-e3b2-7f07-8e7b-1933aad25a26.png)
6. Laravelプロジェクトに追加されます
![スクリーンショット 2020-08-18 1.59.10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/111551/ac2ff032-49fd-bf31-2b3a-5e60c330aa58.png)
7. <font color="blue">**launch.json**</font>を編集します
![スクリーンショット 2020-08-18 1.53.30.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/111551/bf8f701f-dbb9-5fcb-45f9-cdc0bfee602f.png)
8. <font color="blue">**"port": 9000**</font>の後ろにカンマを入力します
9. <font color="blue">**"pathMappings"**</font>を追記します

```
"port": 9000
↓
"port": 9000,
"pathMappings": {
    "/home/vagrant/laravel5": "${workspaceRoot}"
}
```

### デバッグ

1. 行番号の左側をクリックし、ブレークポイントを設定します
![スクリーンショット 2020-08-18 2.03.06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/111551/e6e27369-27d5-dfef-95d6-fb9ccbb8d9ca.png)
2. 実行メニューの<font color="blue">**デバッグの開始**</font>をクリックします
![スクリーンショット 2020-08-18 2.13.12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/111551/3451998d-de80-fc39-6111-80930988f781.png)
3. デバッグしたいWebページにアクセスします
4. ブレークポイントを設定した行に止まります
![スクリーンショット 2020-08-18 2.19.40.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/111551/3fff3a41-2998-ceb6-186d-10bbcaf94061.png)
5. ステップオーバーなどは、<font color="blue">**画面上部のバー**</font>・<font color="blue">**実行メニュー**</font>・<font color="blue">**ファンクションキー**</font>で操作します
![スクリーンショット 2020-08-18 2.27.41.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/111551/4910520c-f480-0a54-46bb-79700de20986.png)
![スクリーンショット 2020-08-18 2.25.43.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/111551/7ba0a02f-66c0-8a68-538c-735e04cc4a77.png)

※参考
https://qiita.com/mgmgmogumi/items/4df4cc3cffde30ed9c94