PhpStorm 2024.1 ヘルプ

プログラムのステップスルー

ステップは、プログラムの段階的な実行を制御するプロセスです。

PhpStorm は、戦略に応じて使用される一連のステップアクションを提供します(たとえば、次の行に直接移動するか、途中で呼び出されたメソッドを入力する必要があるかなど)。

ステップボタンは、デバッグウィンドウのツールバーにあります。

Stepping buttons in the Debug tool window

ステップオーバー

現在のコード行をステップオーバーし、ハイライトされた行にメソッド呼び出しが含まれている場合でも、次の行に移動します。メソッドの実装はスキップされ、呼び出し元メソッドの次の行に直接移動します。

  • ステップオーバーボタン Step Over button をクリックするか、F8 を押します。

スキップされたメソッド内にブレークポイントがある場合、デバッガーはそれらで停止します。途中でブレークポイントをスキップするには、強制ステップオーバーを使用します。

ステップイン

メソッドにステップインして、その内部で何が起こるかを示します。このオプションは、メソッドが正しい結果を返していることが確実でない場合に使用します。

  • ステップインボタン Step Into button をクリックするか、F7 を押します。

回線上に複数のメソッド呼び出しがある場合、PhpStorm は入力するメソッドを確認します。この機能はスマートステップインと呼ばれます。

スマートステップインは、回線上に複数のメソッド呼び出しがあるたびに自動的に使用されるように構成できます。または、明示的に呼び出した場合にのみ呼び出すことができます。

一部のスクリプト、メソッド、関数は、通常はデバッグする必要がない場合があるため、ステップインによってスキップされます。

  1. 設定ダイアログ(Ctrl+Alt+S)で、ビルド、実行、デプロイ | デバッガー | ステップに移動します。デバッガー: ステップページが開きます。

  2. すべてのライブラリスクリプトをスキップするには、ライブラリスクリプトにステップインしないチェックボックスを選択します。

  3. 特定のスクリプトへのステップ実行を抑止するには、スクリプトにステップインしないチェックボックスを選択し、ツールバーのボタンを使用してスクリプトのリストを作成します。

一部の PHP メソッドをスキップする

  1. 設定ダイアログ(Ctrl+Alt+S)で、PHP | デバッグ | ステップフィルターに移動します。ステップフィルターページが開きます。

  2. 関連するマジックメソッドおよびコンストラクターメソッドタイプの横にあるチェックボックスを選択します。

  3. 必要に応じて、the Add button ツールバーボタンを使用して、スキップされるメソッドリストに特定のメソッドを手動で追加します。

スマートステップイン

スマートステップインは、1 行に複数のメソッド呼び出しがあり、どのメソッドに入るかについて具体的に知りたい場合に役立ちます。この機能により、目的のメソッド呼び出しを選択できます。

  1. メニューからスマートステップインを選択するか、Shift+F7 を押します。

  2. メソッドをクリックします。矢印キーまたはタブを使用して選択し、Enter/F7 を押すこともできます。

    Smart Step into lets you decide which method to enter

ステップアウト

現在のメソッドから抜け出し、呼び出し元のメソッドに移動します。

  • ステップアウトボタン Step Out button をクリックするか、Shift+F8 を押します。

カーソル位置まで実行

キャレットの位置に達するまで実行を継続します。

  1. プログラムを一時停止する行にキャレットを置きます。

  2. メニューからカーソル位置まで実行を選択するか、Alt+F9 を押します。

また、線の上にマウスを移動してカーソル位置まで実行アイコンをクリックすると、カーソル位置まで実行を実行できます。

Run to cursor in a single click

カーソル位置まで実行設定 | ビルド、実行、デプロイ | デバッガーの行番号をクリックする際に動作するかどうかを構成できます。

途中でブレークポイントをスキップするには、カーソル位置まで強制実行を使用します。

強制ステップイン

このメソッドが通常のステップインによってスキップされた場合でも、メソッドのステップ。

  • 実行 | デバッグアクション | 強制ステップインに移動するか、Alt+Shift+F7 を押します。

カーソル位置まで強制実行

キャレットの位置に達するまで実行を継続します。途中のブレークポイントはすべて無視されます。

  1. プログラムを一時停止する行にキャレットを置きます。

  2. メニューからカーソル位置まで強制実行を選択するか、Ctrl+Alt+F9 を押します。

強制ステップオーバー

現在のコード行をステップオーバーし、ハイライトされた行にメソッド呼び出しが含まれている場合でも、次の行に移動します。呼び出されたメソッドにブレークポイントがある場合、それらは無視されます。

  • メニューから強制ステップオーバーを選択するか、Alt+Shift+F8 を押します。

セッションの切断

デバッガーを停止しますが、デバッガーを接続せずにスクリプトを実行したままにします。このアクションは、Xdebug バージョン 3.0 以降で使用できます。

  • 実行 | デバッグアクション | セッションの切断に移動します。

    または、デバッグウィンドウのツールバーで をクリックし、 セッションの切断 ( 新しい UI のみ ) を選択します。

ステップ速度を改善する

デバッガー機能はリソースを消費し、ステップのパフォーマンスに影響を与える可能性があります。パフォーマンスが十分でない場合は、この章に記載されている推奨事項に従って最適化してください。

ブレークポイントに到達するか、プログラムが中断されると、デバッグツールウィンドウがアクティブになり、プログラムの実行を制御できるようになります。このために、実行メニューコマンド、またはデバッグツールウィンドウのステップツールバーのアイコンを使用できます。

各ステップアクションは、選択したアクションに応じて、実行ポイントを次の実行場所に進めます。

足踏みを抑える

プログラムをステップ実行している間にデバッガーがスキップするスクリプト、メソッド、関数のリストを作成できます。

  1. 設定ダイアログ(Ctrl+Alt+S)で、ビルド、実行、デプロイデバッガーをクリックしてから、ステップをクリックします。デバッガー: ステップページが開きます。

  2. すべてのライブラリスクリプトをスキップするには、ライブラリスクリプトにステップインしないチェックボックスを選択します。

  3. 特定のスクリプトへのステップ実行を抑止するには、スクリプトにステップインしないチェックボックスを選択し、ツールバーのボタンを使用してスクリプトのリストを作成します。

一部の PHP メソッドをスキップする

  1. 設定ダイアログ (Ctrl+Alt+S) で、PHP に移動し、デバッグステップフィルターをクリックします。ステップフィルターページが開きます。

  2. 関連するメソッドタイプ(マジックメソッドおよびコンストラクター)の横にあるチェックボックスを選択します。

  3. 必要に応じて、the Add button ツールバーボタンを使用して、特定のメソッドをスキップされるメソッドリストに追加します。

ヒント

  • 強制ステップインコマンド the Force Step Into button を使用すると、ステップインされないクラスのメソッドにステップインできます。

    ステップインが抑制されるクラスは、設定ダイアログのデバッガー: ステップページで指定されます。

  • 強制ステップオーバーコマンド the Force Step Over button を使用すると、途中でブレークポイントを無視してメソッド呼び出しを移動することができます。

  • カーソル位置まで強制実行コマンド the Run to Cursor button を使用すると、途中の既存のブレークポイントを無視してキャレットの位置に移動できます。

関連ページ:

デバッガー: ステップ

このページを使用して、デバッグのステップ速度を向上させ、ステップ実行中にスキップする要素を指定します。JavaScript:常にスマートステップインするデフォルトでは、このチェックボックスが選択されており、複数のメソッド呼び出しを含む行でステップインを呼び出すと、スマートステップインが自動的に呼び出されます。その後、ステップインする呼び出しを選択できます。このチェックボックスがオフの場合、ステップインまたはスマートステップインのいずれかを選択できます。ライブラリスクリプトにステップインしないデバ...

新しい UI

新しいユーザーインターフェース (UI) は、PhpStorm の外観を新しく再設計したものです。これは、視覚的な複雑さを軽減し、重要な機能に簡単にアクセスできるようにし、必要に応じて複雑な機能を段階的に公開することを目的として作成されており、その結果、見た目も操作性もすっきりします。主な変更点には、簡素化されたメインツールバー、新しいツールウィンドウレイアウト、新しいテーマ、更新されたアイコンがあります。新しい UI を有効にするを押して設定を開き、を選択します。新しい UI の有効化チェッ...

ブレークポイント

ブレークポイントは、特定のポイントでプログラムの実行を一時停止する特別なマーカーです。これにより、プログラムの状態と動作を調べることができます。ブレークポイントは、たとえば、特定のコード行に到達したときにプログラムを一時停止するなどの単純なものから、追加の条件をチェックしたり、ログに書き込んだりするなどのより複雑なロジックを含むものまであります。ブレークポイントは、一度設定すると、一時的なブレークポイントを除き、明示的に削除するまでプロジェクト内に残ります。ブレークポイントの種類:PhpSto

デバッグツールウィンドウ

デバッガーセッションを開始すると、デバッグツールウィンドウが表示されます。このウィンドウを使用して、デバッガーセッションを制御し、プログラムデータ(フレーム、変数など)を表示および分析し、さまざまなデバッガーアクションを実行します。これは、デバッグツールウィンドウの概要です。ツールウィンドウの使用に関する一般的な手順については、ツールウィンドウを参照してください。ツールウィンドウのタブを切り替えるには、とを押します。セッション:使用可能なデバッグセッションは、デバッグツールウィンドウの上部

中断されたプログラムを調べる

デバッガーセッションが開始されると、デバッグツールウィンドウが表示され、次のいずれかが発生するまでプログラムが正常に実行されます。ブレークポイントがヒットしました、プログラムを手動で一時停止して再開する、その後、プログラムは中断され、現在の状態を調べたり、実行を制御したり、実行時にさまざまなシナリオをテストしたりできます。フレームを調べる:プログラムの状態はフレームで表されます。プログラムが一時停止すると、現在のフレームスタックがデバッグツールウィンドウのフレームタブに表示されます。フレームは

PHP CLI スクリプトをデバッグする

PHP アプリケーションは、必ずしも Web アプリケーションではありません。さまざまなコマンドラインツール、デーモン、メッセージキュー処理アプリケーション、その他の種類のアプリケーションは、通常、PHP CLI で実行されます。PHP CLI デバッグセッションを開始するには、いくつかの方法があります。PhpStorm 内から起動し、スクリプトを起動してデバッガーをアタッチすることができます。または、PhpStorm に受信デバッガー接続をリッスンさせ、IDE の外部でスクリプトを開始すること...