この記事の目的
Laravel Sail でインストールした Laravel プロジェクト内の PHP ファイルを VSCode で開いた時に表示される警告(以下の画像)を消したい。
環境
- Macbook Air
- チップ : Apple M2
- macOS : Ventura 13.0.1
前提条件
公式ページのインストールガイドを参考に Sail を利用した Laravel アプリケーションのインストールが完了していること。
$ sail php -v
PHP 8.1.13 (cli) (built: Nov 26 2022 14:07:55) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.13, Copyright (c) Zend Technologies
with Zend OPcache v8.1.13, Copyright (c), by Zend Technologies
with Xdebug v3.1.5, Copyright (c) 2002-2022, by Derick Rethans
$ sail artisan --version
Laravel Framework 9.42.2
本記事におけるプロジェクトのディレクトリ構造は以下の通り。
VSCode は project-root
を開くものとする。
project-root/
└── my-laravel
├── app
├── bootstrap
├── config
├── database
└── ...
下準備
1… sail php -v
が動作することを確認
# 事前に sail up コマンドでコンテナを起動させておくこと。
$ sail php -v
PHP 8.1.13 (cli) (built: Nov 26 2022 14:07:55) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.13, Copyright (c) Zend Technologies
with Zend OPcache v8.1.13, Copyright (c), by Zend Technologies
with Xdebug v3.1.5, Copyright (c) 2002-2022, by Derick Rethans
2… sail php
コマンドを実行するファイルを作成
本記事では project-root/
直下に .vscode/bin/
を作成し、その中に php
という名前で実行ファイルを作成した。
project-root/
├── .vscode
│ └── bin
│ └── php ★作成したファイル★
└── my-laravel
├── app
├── bootstrap
├── config
├── database
└── ...
#!/bin/bash
SCRIPT_DIR=$(cd $(dirname $0); pwd)
cd ${SCRIPT_DIR}/../../my-laravel
./vendor/bin/sail php "$@"
実行権限を付与して実行してみる。
$ chmod +x .vscode/bin/php
$ .vscode/bin/php -v
PHP 8.1.13 (cli) (built: Nov 26 2022 14:07:55) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.13, Copyright (c) Zend Technologies
with Zend OPcache v8.1.13, Copyright (c), by Zend Technologies
with Xdebug v3.1.5, Copyright (c) 2002-2022, by Derick Rethans
いざ設定
VSCode で ⌘ + ,
と入力し設定を開き php.validate.executablePath
と検索。
設定の適用範囲は「ワークスペース」を選択しているが、自身の環境に応じて「ユーザー」を選択するのも可。
setting.json で編集
を選択して、以下の内容を記載して保存。
{
"php.validate.executablePath": ".vscode/bin/php",
}
再度 PHP ファイルを開き、最初に表示されていた警告が表示されなくなることを確認。