hyacca
@hyacca

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

VSCodeでPHPを自動整形したい(php intelephense使用)

解決したいこと

VSCodeでphpの自動整形ができるようにしたい!

VScodeでwordpressテーマを作成するためにphpを記述しています。

●環境:mac OS Monterey ver.12.4

●php:ver.8.1.10

●コマンドラインはbashを使用

●$ brew -v
→Homebrew 3.6.0
 Homebrew/homebrew-core

●$ which php
→/opt/homebrew/bin/php

●$ echo PATH(PATHの前にドル)
→/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

phpをhomebrewにてインストールし、よくわからないままpathを通す
→vscodeでphp intelephenseをインストール
→php.validate.executablePathにpathを記述
で、昨年12月末まではphpの自動整形が何の問題もなく使えていました。

が、年始、出勤していつものようにコマンドをうつと、
「'php' ファイルのフォーマッタがインストールされていません。」
というエラーメッセージが出るように。
なぜなのでしょうか。なぜ…。

いろいろ調べたのですが、そもそもの根本がわかっていないので何も解決せず。
取り急ぎ、必要そうな情報をあげさせていただきます。

なぜhomebrewでphpをインストールしたのか
→インストールした言語のバージョン管理をしてくれると見たため。

しっかり一から勉強して、理解して解決した方がいいのは百も承知ですが、
調べても何が何だかで途方に暮れております。

同じ状況から脱することができた方など、
ヒントでもいいのでご教授いただけますと幸いです。

何卒よろしくお願い申し上げます。

調べて読んでみたサイト

0

3Answer

なぜエラーが出るようになったのかは分かりませんが、考えられるのは、例えば下記のチェックが外れてしまっている、などですかね。
image.png

↑こちらはVSCodeのInterephenseに関する設定項目です。

エラーの解消法としては、以下をお試しいただくと良いかと思います。

  1. 上記のチェックボックスにチェックを入れる

すでにチェックが入っているにも関わらずエラーが出る場合

  1. Interephenseがインストールされていることを確認
  2. VSCodeを再起動
1Like

Comments

  1. @hyacca

    Questioner

    ありがとうございます。
    こちらのチェックも確認してみたのですが、チェックあり、再起動を実施してもエラーのままでした…。やはりvscodeでのパスの通し方が悪いのでしょうか;; もう少し調べてみます、、!

うーん、パスが違うのであれば、VSCodeのエラーメッセージは「PHPがインストールされていません」とかになりそうな気がします。

image.png

@hyacca さんの画面でも、このような表示でしょうか?

一度Interephenseを削除して、インストールし直すのもありかもしれません。

1Like

Comments

  1. @hyacca

    Questioner

    ご返信ありがとうございます。
    まさにその通りのエラーメッセージが出まして、、。
    削除してインストールもしているのですが、一向に解決できず…。
    vscodeでというよりmacでのパスの通し方が悪いのかもしれませんね、、。
    どうにもならなかったらmacでphpの再インストールをしてみることにします、、!
  2. なるほど、困りましたね……。

    「フォーマッタをインストール」ボタンを押すと、どうなりますか?

    よければこちらお試しください。

    1. setting.jsonを開く
    2. editor.defaultFormatter の設定が記載されている行があれば、削除する
    "[php]": {
    "editor.defaultFormatter": "xxx"
    }



    "[php]": {
    }

    3. `shift` + `option` + `F` を押下
    4. 「フォーマッタをインストール」ボタンを押下
    5. 「PHP Interephense」を選択
  3. @hyacca

    Questioner

    ご返信ありがとうございます。

    こちらの通りに作業しましたが、解決せず、、
    もしやバージョン?と思い、「PHP Interephense」のバージョンを1つ下げ、
    同じ工程で作業させていただいたところ、
    うまく動作するようになりました!

    自分1人では解決できなかったので大変助かりました。
    本当にありがとうございました!

Your answer might help someone💌