0
2

More than 3 years have passed since last update.

Laravel SaleでのPHPのパス解決

Posted at

概要

WSL2上でLaravel Sailで環境を構築しVSCodeを使用した際に、PHP関連のエクステンションを動かしたいが、PHPのパスが解決出来ていないと動作しないエクステンションがあり、その解決で動いた方法のメモ。

WSL環境はWindows10、Ubuntu-20.04

方法

PHPを実行するファイルを作成する。

sudo vi /usr/local/bin/php

以下の内容を記載して保存する。

内容的には、実行時のディレクトリ名を取得して、それをDocker execの際のコンテナ名に使用して、PHPを実行する。

コンテナ名はLaravel Sailのデフォルトになっているので、もしコンテナ名が異なれば適宜修正する。

path=$(printf '%s\n' "${PWD##*/}")
command="docker exec ${path}_laravel.test_1 php "$@""
$command

実行権限を付ける

sudo chmod +x /usr/local/bin/php

これで、Laravel Sailのプロジェクト直下に移動して、php -vなどのコマンドを打てば実行される。

あとはVSCodeのエクステンションの設定でも動作するようになる。

例えば、以下のPHPMDのエクステンションは、

この設定で動くことが確認できた。

"phpmd.command": "php ./vendor/bin/phpmd"
0
2
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
0
2