Phpstormの便利機能

## Phpstormについて

JetBrains社が開発した、2010年にリリースされたIDE。他の言語（Pycharm, Goland, rubystormなど）にもあります。ただのIDEではない！データベース、Docker、Git、AIアシスタント、ビルド、リファクタリングツールなどなどが出来ます！IDEは色々ありますが、個人の気持ちですね、自分は開発関係に全部１ソフトでまとめたら助かると思います。

## 紹介

デフォルトのSymfonyのプロジェクトを作成して、PhpStormで開きます：

![Screenshot 2024-11-28 at 16.41.42.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/f8b0428c-9870-82af-19c0-e5b624301160.png)

こんな形です！初めに混んでるように見えますが、機能を1個ずつ紹介したいと思います：

シンプルなディレクトリー表示になってます：

![Screenshot 2024-11-28 at 16.43.48.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/b8d5df1c-c6c6-d8f0-3e1f-68d2c303d064.png)

クラスの構造も見れます

![Screenshot 2024-11-28 at 17.19.09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/14a49797-068f-d6ae-30ba-6c07a63c2db5.png)

### ファイル管理

ファイルの管理はしやすい！もちろんGitはありますが、Gitで管理してないファイルを管理出来ます！

Local Historyを使えば、全部の変更は見れます！

![Screenshot 2024-12-03 at 13.56.55.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/a326414c-46a3-2ec7-ceb8-f6d28c110fcc.png)

![Screenshot 2024-12-03 at 13.46.57.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/a50e0033-4bba-9001-28cb-273027104527.png)

それでGitも分かりやすいようになってます！Anotateを使えば、行によって履歴見えます！

![Screenshot 2024-12-03 at 13.58.19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/e444c458-5cff-1f16-2e4e-b998847b3793.png)

![Screenshot 2024-12-03 at 13.59.19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/5dddb832-a72b-e30a-2712-86e2fe857441.png)

### 自動生成

プラグインを使用しなくても自動生成する方法は複数あります！存在しているコードに対してUnitテストなどができます！

![Screenshot 2024-12-03 at 14.21.55.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/3f7add55-1986-2d46-abe6-ed9ff3408bba.png)

![Screenshot 2024-12-03 at 14.22.00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/04697877-4375-0c50-aca0-4291ee416f1f.png)

でもプラグイン入れたら、もっと出来ます！今回はSymfonyを使ってますのでプラグイン入れてみました。入れたら、Symfonyのクラスやコマンド、コントローラが作成出来ます！

![Screenshot 2024-12-03 at 14.20.24.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/905a9017-6032-ee84-87c5-e1862efc539c.png)


### DBの操作

エディター内でデータベースにアクセスも出来ます！

![Screenshot 2024-12-03 at 13.09.39.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/8705ae3a-25a4-c434-a6dc-7b656b89d697.png)

まずはデータソースを追加します。

Dockerで使われていますので、ポートを確認します、Phpstormのコマンド上で確認する：

![Screenshot 2024-12-03 at 13.17.34.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/f0e630d6-419c-6040-918d-f0954536c76e.png)

見たら、ちゃんと3306のポートですのでそういう設定にしましょう：

![Screenshot 2024-12-03 at 13.20.16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/36843b2e-4208-d9b0-6607-0b508e5d1b31.png)

その設定すると、アクセスはできるようになります！

![Screenshot 2024-12-03 at 13.16.29.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/9aa51086-ae56-79ac-1bb8-3158ef7f3317.png)

ダイアグラムも自動で生成できます：

![Screenshot 2024-12-03 at 13.21.56.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/62c92549-21de-6e2e-893e-4856fb0b75cc.png)

![Screenshot 2024-12-03 at 13.22.05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/9fe38c84-0eee-939a-926f-067e9c87683c.png)





## プラグイン

様々なプラグインをインストール出来ます！それから自分のオススメを書きます！

### .envファイルのサポート

![Screenshot 2024-12-03 at 13.35.10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/2246fb93-0434-44d5-16c8-6a0bae465a3b.png)

環境変数は大事でDockerだとファイルが増えます、それで管理もやりやすいです。Phpのファイルの中でも簡単に呼べます！


### docker

アプリと連携するために、簡単で操作も出来ます！
![Screenshot 2024-12-03 at 13.41.10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/c05ab3d0-6385-b971-874e-a69002653590.png)

サービスのところでDockerを選択すると、動いてるコンテナーを選べます、それでそれぞれのログや再起動、停止は出来ます！

![Screenshot 2024-12-03 at 13.41.53.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/e931e8b9-9750-2215-bc2c-f9b93bff1f4d.png)

![Screenshot 2024-12-03 at 13.42.01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/9b7a5ca3-6c5e-aeb7-47ee-a9eb33af386c.png)

そして、コンテナーにターミナルを付けれます！それでマイグレーションなどを同じIDEで出来ます！

![Screenshot 2024-12-03 at 13.44.21.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/04cbb8fa-4e89-d5be-f444-fa222a00d0db.png)

### Php Annotations

![Screenshot 2024-12-03 at 14.02.56.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/89ef97e1-0598-89e7-635c-62d59f54796d.png)

それを使うとドキュメントを作成しやすい！オートコンプリートやおすすめが出てますし、自動生成も強いです！

### Php Toolbox

![Screenshot 2024-12-03 at 14.03.30.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/3fd1a575-c3a0-3a42-0929-c4856a45897c.png)

設定ファイルやPhp自体にも色々オートコンプリートが出来るようになります！プロジェクトを全体で読まれて、正しいの情報が出てきます！

### Prettier

![Screenshot 2024-12-03 at 14.04.14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/b881c594-aafb-35e6-2a0a-14eb563ffa4b.png)

それはJavascriptなど関連の言語に読みやすいになります！

### その他

色々なフレームワークもサポートされてますのでぜひMarketPlaceで探してください！

![Screenshot 2024-12-03 at 14.09.11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/878226/98aa1b21-2bf8-10f1-1a80-1694cf1c4254.png)

## まとめ

IDEとして開発しやすいと思います！色々なツールを1箇所でまとめて使えるのは便利