PHP バージョンの移行
ある PHP バージョンから別のバージョンへの移行がコードの品質にどのような影響を与えるかを確認するには、php-migration Qodana シナリオを使用します。このシナリオを実行すると、新しい PHP バージョンにアップグレードした後に発生するコードベースの問題を確認できます。
この機能は PHP リンターでサポートされており、Ultimate および Ultimate Plus ライセンスとその試用版で利用可能です。利用可能なライセンスモデルの詳細については、サブスクリプションのオプションと価格のページを参照してください。デモ版のリクエストも可能です。

このシナリオは、qodana.yaml ファイルで構成することも、CLI を使用して呼び出すこともできます。
このスニペットは、name パラメーターを使用して php-migration シナリオを指定します。fromLevel パラメーターと toLevel パラメーターは、それぞれ古い PHP バージョンとアップグレードされた PHP バージョンを示します。
これは qodana.yaml 構成の例です。
この機能を実行するには、次の 2 つのオプションがあります。
このスニペットは、--script オプションの php-migration シナリオとそれに続くコロン : 文字、および -to- 文字の組み合わせで区切られた PHP バージョンを指定します。QODANA_TOKEN 変数はプロジェクトトークンを参照します。
これは CLI コマンドの例です。
サンプル
言語移行機能がどのように機能するかを示すために、次の PHP コードスニペットがインスペクションされます。
PHP ランタイムのバージョン 7.1 で Qodana を実行すると、レポートに次の問題が含まれます。
PHP ランタイムのバージョン 8.0 で Qodana を実行すると、次の出力が生成されます。
移行機能を有効にして Qodana を実行すると、次のレポートが生成されます。
ご覧のとおり、移行レポートには、バージョン 8.0 レポートに含まれ、バージョン 7.1 レポートには含まれていない問題のみが含まれています。
関連ページ:
PHP
すべての Qodana リンターは、特定のプログラミング言語とフレームワーク向けに設計された JetBrains IDE に基づいています。PHP プロジェクトを解析するには、以下の特徴を持つ Qodana for PHP リンターを使用できます。リンター名 Docker イメージベースとなるもの PhpStorm ライセンスに基づいて利用可能 Ultimate および Ultimate Plus ライセンス発送方法ネイティブソリューションと Docker イメージサポートされる言語 PHP、JavaScr...
Qodana のエディション
ニーズに応じて、次の表に示す適切なライセンスを選択できます。Community フリー孤立した問題の解決に最適 Ultimate 詳細については、サブスクリプションのオプションと価格を参照してくださいさまざまなビジネスタスクを解決するために設計されています。試用版をご利用いただけます。Ultimate Plus 詳細については、サブスクリプションのオプションと価格を参照してください Ultimate ライセンスと同じ機能がすべて含まれていますが、追加機能と無制限の履歴データストレージも含まれています。試用...
ライセンス監査
プロジェクトのライセンスが依存関係のライセンスと互換性があることを確認するのは決して簡単な作業ではありませんが、これは法的な目的のために必要です。このプロセスを自動化して間違いを避けるために、現在いくつかの Qodana リンターによってサポートされているライセンス監査機能を使用できます。JVM 用 QodanaMaven および GradlePHP 用の QodanaComposerJS 用 Qodananpm および YarnPython 用 QodanapipGo 用 QodanaGo モ...