質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.31%
Visual Studio Code

Visual Studio Codeとは、Microsoft社が開発したマルチプラットフォーム対応のテキストエディタです。Visual Studioファミリーの一員でもあります。拡張性とカスタマイズ性が高く、テキストエディタでありながら、IDEと遜色ない機能を備えることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

1回答

1757閲覧

PHP: Visual Studio CodeでのIntelepenseをディレクトリ指定でエラー箇所を出したい

he11o_world

総合スコア24

Visual Studio Code

Visual Studio Codeとは、Microsoft社が開発したマルチプラットフォーム対応のテキストエディタです。Visual Studioファミリーの一員でもあります。拡張性とカスタマイズ性が高く、テキストエディタでありながら、IDEと遜色ない機能を備えることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2022/02/10 10:06

現在、Visual Studio Codeでphpを書いています。
拡張機能であるIntelephenseはコードのエラーを表示してくれるので重宝しております。

php5用に書かれたファイル群をphp7で書き直したいのですが、
ファイルの数が多く分散されているため、1つずつファイルを開くと、
そのファイルごとにエラーは表示されますが、100個以上ファイルがあるとファイルを開くのが少し面倒でもあります。

可能であればディレクトリを指定して再帰的にファイルごとのエラーが出せるのであれば
把握もしやすいと思っておりますが、そのような機能はありますでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2022/02/10 10:10

そもそもどうやって開いてますか? 通常、プロジェクトルートディレクトリを指定してエクスプローラに表示させると思うのですが、1ファイル1ファイル開いてるのでしょうか?
he11o_world

2022/02/10 11:30

いえ、ディレクトリを指定することにより開いています。 「ファイル」→「フォルダを開く」や、初回ならフォルダをVScodeにドラッグ&ドロップ等をしています。 VScode内の左側にあるエクスプローラーにディレクトリ配下のファイル一覧が表示されています。 VScodeのエクスプローラーのphpファイルをクリックおよび、ダブルクリックするとファイルが開かれ ソースに問題があれば、下の「問題」項目にエラー内容が表示されます。 複数のファイルを開いていると「問題」の項目にもファイルごとにエラーが記載されるため、 「ファイルを開かないと"問題"の項目にエラーが表示されない」と認識していました。 できれば質問のような「フォルダを指定して配下のファイルに存在するエラー一覧が出る」ようになれば嬉しい限りです。
m.ts10806

2022/02/10 20:58

質問は編集できますので現状がわかる情報を追記してください。 ただ、特にPHPはかなり疎結合な言語体系なので、一覧というのは難しいかもしれません。構文エラーの話なら分かりませんが。 eclipseであれば「問題」タブにプロジェクト配下の警告含めて全部出ます。
he11o_world

2022/02/11 11:41

eclipseを入れてみました、すべてのファイルにおけるエラーなどが出てきたので希望していた機能です。フィルタ無しで、php7.4で検証しているのに、古いmysql_系のundefinedエラーが出ないのは不思議ですし、何より重くて使うのに慣れが必要そうです。 プロジェクトルートディレクトリという意味は始めて知りました。複数のフォルダを登録できるのですね 結論としてはvscodeのIntelepenseは「開いたファイルに対して問題の項目が出る」けれども、「フォルダのルートから自動的に全ファイルのエラー表示は無い」と考えて良いでしょうか? ベストアンサーにしたいので、その内容で書いていただければそのようにさせていただきます。
m.ts10806

2022/02/11 11:47

回答は質問者自身が投稿できるので自身が理解した内容調べた内容を記載したほうが良いと思います。 VSCode重用者ではないですが、通常IDEはアプリケーション毎にプロジェクトを作ってその中にファイルを置きます。もちろんJavaなどではプロジェクトをビルドパスに追加して連携することはありますが、 毎回どこかのディレクトリを選んでどうこうではなく、プロジェクトを作成して全てその中で完結させます。 PHPなどスクリプト系だとその概念が若干薄いかもしれませんね。 ちょっと調べた感じVSCodeでもプロジェクト作成できそうですね。 それができればプロジェクトごとの管理となってプロジェクト内のエラーサマリーも出そうに思います(あくまで推測)
m.ts10806

2022/02/11 11:54

>古いmysql_系のundefinedエラーが出ない https://www.php.net/manual/ja/function.mysql-connect.php のことでしたら、あくまで「メソッド」として解釈されてるからだと思います。 定義済みのメソッドかどうかは実行してみないと分かりません。 特に削除されたものならそうですね。 「非推奨」ならdeprecatedアノテーションがついていたりで明示されてるのでIDEで拾ったり実行時警告出るかもしれませんが、「削除」なら参照しようがないので、あくまでundefined methodとして実行時に分かるものです。
he11o_world

2022/02/11 22:06

ご丁寧にありがとうございました。vscodeでは一覧出力はできないようなので、 php5からphp7に対して廃止された関数を検出するにはgitで公開されているチェックツールを使いました。 gui環境にこだわらず、コマンドラインで提供されているツールを使うべきでした。 phpはビルドの概念が無いので、フォルダ単体それぞれがプロジェクトルートみたいなもので、 メール送信や認証をしたりする共通ライブラリなどは設定からライブラリのディレクトリを指定しています。 ご助言をいただき誠にありがとうございました。
guest

回答1

0

自己解決

指定したディレクトリをVisual Studio CodeでのIntelepenseを使って配下のファイルにエラーを表示させる方法はありませんでした。
今回の目的はphp7で動作しない関数や引数などに関するエラーが無いかを検査したかったので、
phpmar(PHP 7 Migration Assistant Report)をgit cloneにてインストール、実行したところ、求めていたdeprecatedなどがmarkdownファイルで出力されました。

投稿2022/02/11 21:58

he11o_world

総合スコア24

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.31%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問