PhpStorm 2026.3 Help

ブレークポイント

ブレークポイントは、特定のポイントでプログラムの実行を一時停止する特別なマーカーです。 これにより、 プログラムの状態を調べたり、 ステップ実行したりできます。 ブレークポイントは、たとえば特定のコード行に到達したときにプログラムを一時停止するなどの単純なものや、 追加の条件をチェックしたり ログに書き込んだりするなどのより複雑なロジックを含むものもあります)

ブレークポイントは、一度設定すると、 一時的なブレークポイントを除き、明示的に削除するまでプロジェクト内に残ります。

ブレークポイントの種類

IntelliJ IDEA では、次のタイプのブレークポイントを使用できます。

  • 行ブレークポイント: ブレークポイントが設定されたコード行に到達したらプログラムを中断します。 このタイプのブレークポイントは、実行可能なコード行に設定できます。

  • メソッドのブレークポイント: 指定されたメソッドまたはその実装の 1 つを開始または終了するとプログラムを中断し、メソッドの開始 / 終了条件を確認できるようにします。

  • 例外のブレークポイント: Exception またはそのサブクラスがスローされたときにプログラムを中断します。 これらは例外条件にグローバルに適用され、特定のソースコード参照を必要としません。

ブレークポイントの設定

行ブレークポイントを設定する

  • ブレークポイントを設定するコードの実行可能な行でガターをクリックします。 または、行にキャレットを置き、 Ctrl+F8 を押します。

    行ブレークポイント

メソッドブレークポイントを設定する

  • メソッドが宣言されている行のガターをクリックします。 または、メソッド宣言にキャレットを置いて、 Ctrl+F8 を押します。

    メソッドブレークポイントヒット

    あるいは、以下の手順を実行します。

    1. Ctrl+Shift+F8 を押すか、メインメニューから 実行 | ブレークポイントの表示 を選択します。

    2. 表示される ブレークポイント ダイアログで、 Alt+Insert を押すか 追加ボタン をクリックして PHP メソッドのブレークポイント を選択します。

    3. メソッドブレークポイントの追加 ダイアログで、クラスとメソッド、ブレークポイントを追加するプレーン関数を指定します。

条件付きブレークポイントとログブレークポイントを設定する

条件を満たした場合のみアプリケーションを一時停止する(条件付きブレークポイント)、またはメッセージをログに記録する(ログブレークポイントまたはログポイント)ブレークポイントを設定するには:

  1. 設定したい宣言の横のガターで行番号を右クリックしてブレークポイントを設定します。

    条件付きブレークポイントとログブレークポイント
  2. 表示されたメニューから、それぞれ 条件付きブレークポイントを追加する または ロギングブレークポイントを追加する を選択します。

  3. 表示されたポップアップで、条件またはログに出力したい式を指定します。

詳細については、 ブレークポイントの条件および ログブレークポイントを参照してください。

例外ブレークポイントを設定する

  1. Ctrl+Shift+F8 を押すか、メインメニューから 実行 | ブレークポイントの表示 を選択します。

  2. ブレークポイント ダイアログで Alt+Insert を押すか 追加ボタン をクリックし、 「PHP 例外ブレークポイント」 または JavaScript 例外ブレークポイント を選択します。

    例外ブレークポイントの作成
  3. 例外ブレークポイントの追加 ダイアログで、例外クラスを指定します。

詳細は、 Karma を参照してください。

解決されたブレークポイント

Xdebug (2.8 以降) を使用する場合、PhpStorm は ブレークポイント解決メカニズムを使用します。 このメカニズムで、デバッガーは、PHP が現在の行の内部実行可能バイトコードを生成できるかどうかを評価します。 ブレークポイントが参照する行にそのようなコードがない場合、対応するブレークポイントにヒットできません。 Xdebug は、後続の最大 5 行までスキャンし、実行可能コードが配置されている行で停止し、ブレークポイントの定義をこの行に更新します。

次の例では、実行可能コードが含まれない 7 行目にブレークポイントが設定されています。

エディターで解決されたブレークポイント

デバッグセッションを実行すると、PhpStorm はブレークポイントを解決された 8 行目に移動し、セッションを中断して、対応する通知を表示します。

通知で解決されたブレークポイント

解決されたブレークポイントを無効にする

デバッグセッション中に PhpStorm がブレークポイントを解決および移動したくない場合は、 設定 ダイアログ (Ctrl+Alt+S) の PHP | デバッグ ページでこの機能を無効にすることができます。

Xdebug エリアでは:

  • 現在の行で使用できない場合はブレークポイントを解決する (Xdebug 2.8+) チェックボックスの選択を解除して、ブレークポイント解決機能全体を無効にします。 解決が無効になっている場合、実行可能コードのないコード行に設定されたブレークポイントは常に無視されることに注意してください。

  • ブレークポイントがソースと異なる場合は解決された位置に移動 チェックボックスの選択を解除して、ブレークポイントの解決後に Xdebug が実際に停止する行へのブレークポイント位置の自動調整のみを無効にします。 ブレークポイント解決機能は引き続き有効になることに注意してください。

設定 領域で、 ブレークポイントが別の行に解決されたかどうかを通知する (Xdebug 2.8+) チェックボックスの選択を解除して、ブレークポイントが解決されるたびに PhpStorm 通知をオフにします。

    戻り値のデバッグブレークポイント

    Xdebug 3.2 以降では、PhpStorm は Xdebug の 戻り値のデバッグ(英語)機能をサポートします。 これは、中間変数に格納せずにすぐに値を返す関数の戻り値のインスペクションに対する追加のデバッグ手順です。

    Xdebug 戻り値のデバッグを実行する

    PhpStorm で Xdebug 戻り値のデバッグを実行するには:

    1. return ステートメント行の 行ブレークポイントを設定します。

    2. PHP デバッグセッションを 起動します。 デバッガーは、関数の最後のステートメントで実行を中断します。

    3. デバッグツールバー (F7) の ステップイン をクリックします。

      ウォッチの デバッグ ツールウィンドウの 変数 タブで、インスペクションの追加変数を使用できるようになりました。

      戻り値のデバッグを実行する

      Xdebug の戻り値のデバッグを無効にする

      戻り値のデバッグは、デフォルトで PhpStorm で有効になっています。 無効にするには、次のいずれかを実行します。

      • デバッグ ウィンドウのツールバーで、 をクリックして 設定 メニューを開き、 デバッガー設定 に移動して、 関数戻り値のデバッグを有効化 オプションを選択解除します。

      • 設定 ダイアログ (Ctrl+Alt+S) の PHP | デバッグ ページで、 Xdebug 領域の 関数戻り値のデバッグ (Xdebug 3.2+) を有効化 チェックボックスの選択を解除します。

        ブレークポイントの管理

        ブレークポイントを除去する

        • 例外以外のブレークポイントの場合: ガターのブレークポイントをクリックします。

        • すべてのブレークポイントの場合: メインメニューの 実行 | ブレークポイントの表示 Ctrl+Shift+F8 に移動し、ブレークポイントを選択して、 除去 をクリックするか、 Delete を押します。

        誤ってブレークポイントを削除してそのパラメーターを失うのを防ぐために、エディターにドラッグするか、マウスの中央ボタンをクリックして、ブレークポイントを削除することを選択できます。 これを行うには、 設定 | ビルド、実行、デプロイ | デバッガー に移動して エディターにドラッグするか、マウスの中ボタンでクリックする を選択します。 ブレークポイントをクリックすると、それが 有効または無効になります。

        ブレークポイントのミュート

        ブレークポイントでしばらく停止する必要がない場合は、 ミュートできます。 これにより、デバッガーセッションを移動することなく、通常のプログラム操作を再開できます。 その後、ブレークポイントのミュートを解除して、デバッグを続行できます。

        • デバッグ ツールウィンドウのツールバーの ブレークポイントのミュート ボタン Mute Breakpoints button をクリックします。

        ブレークポイントを使用可能 / 使用不可にする

        ブレークポイントを削除すると、その 内部構成は失われます。 パラメーターを失うことなく個々のブレークポイントを一時的にオフにするには、 無効にすることができます。

        • 例外以外のブレークポイントの場合: 右クリックし、必要に応じて 有効 オプションを設定します。 または、 Alt キーを押しながらブレークポイントをクリックするか、マウスの中ボタンをクリックすることでも設定できます。 マウスの中ボタンにブレークポイントの削除が 割り当てられていないことを確認してください。

        • すべてのブレークポイントの場合: 実行 | ブレークポイントの表示 Ctrl+Shift+F8 をクリックして、リストのブレークポイントをオン / オフにします。

        ブレークポイントの移動 / コピー

        • ブレークポイントを移動するには、それを別の行にドラッグします。

        • ブレークポイントをコピーするには、 Ctrl を押したまま、ブレークポイントを別の行にドラッグします。 これにより、宛先に同じパラメーターを持つブレークポイントが作成されます。

        設定されたすべてのブレークポイントを表示

        ブックマークツールウィンドウで、すべてのブレークポイントのリストを表示できます。 ブレークポイントは、コード内に配置すると、ツールウィンドウの専用リストに自動的に追加されます。

        • メインメニューで 表示 | ツールウィンドウ | ブックマーク に移動し、 ブレークポイント リストを展開します。

        ブックマークツールウィンドウ

        ブレークポイントのグループ化

        たとえば、特定の問題に対してブレークポイントをマークアウトする必要がある場合は、ブレークポイントをグループにまとめることができます。

        • ブレークポイント ダイアログ Ctrl+Shift+F8 で、グループに配置するブレークポイントを選択し、メニューから グループに移動 を選択します。

        ブレークポイントのプロパティを構成する

        ブレークポイントのタイプに応じて、特定のニーズに合わせて操作を調整できる追加のプロパティを構成できます。 最も使用されるオプションは、 インテンションを介して利用できます。

        • ブレークポイントインテンションにアクセスするには、ブレークポイントのある行にキャレットを置き、 Alt+Enter を押します。 このオプションは、基本的なブレークポイントプロパティをすばやく設定する必要がある場合に使用します。

          ブレークポイントインテンション
        • プロパティの完全なリストにアクセスするには、ブレークポイントを右クリックして 詳細 をクリックするか、 Ctrl+Shift+F8 を押します。

        インテンションリファレンス

        インテンション

        説明

        ブレークポイントの除去

        選択した行のブレークポイントを 削除します。

        ブレークポイントの無効化

        選択した行のブレークポイントを 無効にします。

        ブレークポイントの編集

        最もよく使用されるブレークポイント プロパティを含むダイアログを開きます。 その他のプロパティについては、 詳細 をクリックするか Ctrl+Shift+F8 を押します。

        ブレークポイントのプロパティリファレンス

        この章では、ブレークポイントで使用できる機能について説明します。

        有効

        プロジェクトから削除せずに一時的にブレークポイントを無効にするには、チェックボックスをオフにします。 無効化されたブレークポイントは、 ステップ実行中にスキップされます。

        PhpStorm を構成して、ブレークポイントを完全に削除するのではなく、クリック時に有効 / 無効にすることができます。 これを行うには、 設定 | ビルド、実行、デプロイ | デバッガー に移動し、 ブレークポイントの除去 オプションを エディターにドラッグまたはマウスの中央ボタンをクリック に設定します。

        中断

        ブレークポイントに達したときにプログラムの実行を一時停止するかどうかを指定します。

        非中断ブレークポイントは、プログラムを一時停止せずに何らかの式をログに記録する必要がある場合 (たとえば、メソッドが何回呼び出されたかを知る必要がある場合)、またはヒット時に 依存するブレークポイントを有効にする トリガーブレークポイントを作成する必要がある場合に役立ちます。

        条件

        このオプションは、ブレークポイントに到達するたびにチェックされる条件を指定するために使用されます。 条件は、 true または false に評価される PHP ブール式です(例: $someID == 'foo')。 条件が true と評価された場合、選択されたアクションが実行されます。 それ以外の場合、ブレークポイントは無視されます。

        式の結果は、return ステートメントから取得されます。 return ステートメントがない場合、結果はコードの最後の行から取得されます。

        式を評価するときは、プログラムの動作や結果に影響を与える可能性があるため、副作用が発生する可能性があることを必ず認識してください。

        ログオプション

        ブレークポイントに到達すると、次のログがコンソールに記録されます。

        • "Breakpoint hit" メッセージ: Breakpoint reached: LineBreakpoint.php:10 のようなログメッセージ。

        • スタックトレース: 現在のフレームのスタックトレース。 これは、プログラムの実行を中断することなく、このポイントに至ったパスを確認する場合に役立ちます。

        • 評価して記録: 'Initializing' や users->size () などの任意の式の結果。

          式の結果は、return ステートメントから取得されます。 return ステートメントがない場合、結果はコードの最後の行から取得されます。この行は式である必要はなく、リテラルでも機能します。 プログラムの実行中に、カスタムメッセージを生成したり、いくつかの値を追跡したりするために使用できます。

          式を評価するときは、プログラムの動作や結果に影響を与える可能性があるため、副作用が発生する可能性があることを必ず認識してください。

        ログブレークポイントを設定する

        1. (オプション) ログに記録する式がエディター内の目の前にある場合は、それを選択します。

        2. Shift を押したままガターをクリックします。

        一度ヒットしたら除去する

        ブレークポイントを 1 回ヒットした後、プロジェクトから削除するかどうかを指定します。

        次のブレークポイントに到達するまで無効にする

        次のブレークポイントに到達するまで無効にする ボックスでブレークポイントを選択すると、現在のブレークポイントのトリガーとして機能します。 これにより、指定したブレークポイントに到達するまで現在のブレークポイントが 無効になります。

        これが発生した後に再び無効にするか、有効のままにするかを選択することもできます。

        このオプションは、特定の条件下または特定のアクションの後でのみプログラムを中断する必要がある場合に役立ちます。 この場合、通常、トリガーブレークポイントはプログラムの実行を停止するために必要ではなく、 non-suspending になります。

        ブレークポイントのステータス

        ブレークポイントには、次のステータスがあります。

        状況

        説明

        検証済み

        デバッガーセッションを開始した後、デバッガーはプログラムをブレークポイントで一時停止することが技術的に可能かどうかをチェックします。 はいの場合、デバッガーはブレークポイントを 検証済みとしてマークします。

        Warning

        ブレークポイントでプログラムを一時停止することが技術的に可能ですが、それに関連する問題がある場合、デバッガーはブレークポイントのステータスを 警告に設定します。 これは、たとえば、メソッドの実装の 1 つでプログラムを一時停止することが不可能な場合に発生することがあります。

        不正

        ブレークポイントでプログラムを一時停止することが技術的に不可能な場合、デバッガーはそれを 無効としてマークします。 これは、その行に実行可能なコードがないためよく発生します。

        非アクティブ / 依存

        ブレークポイントは、 別のブレークポイントにヒットするまで無効になるように構成されている場合、非アクティブ / 依存としてマークされますが、これはまだ発生していません。

        ミュート中

        すべてのブレークポイントは ミュートされているため、一時的に非アクティブです。

        無効

        それはされているため、このブレークポイントが一時的にアクティブで 無効。

        中断しない

        このブレークポイントには 中断ポリシーが設定されているため、ヒットしたときに実行が中断されることはありません。

        ブレークポイントアイコン

        タイプと ステータスに応じて、ブレークポイントは次のアイコンでマークされます。

        行

        メソッド

        Exception

        標準

        line breakpoint

        method breakpoint

        exception breakpoint

        無効

        disabled line breakpoint

        disabled method breakpoint

        disabled exception breakpoint

        検証済み

        verified line breakpoint

        verified method breakpoint

        ミュート中

        muted line breakpoint

        muted method breakpoint

        非アクティブ / 依存

        inactive/dependent line breakpoint

        inactive/dependent method breakpoint

        ミュート無効

        muted disabled line breakpoint

        muted disabled method breakpoint

        中断しない

        non-suspending line breakpoint

        non-suspending method breakpoint

        確認済みの一時停止なし

        verified non-suspending line breakpoint

        verified non-suspending method breakpoint

        不正

        invalid breakpoint

        生産性のヒント

        デバッグ出力にブレークポイントを使用する

        コードに print ステートメントを挿入する代わりに、 中断しない ロギングブレークポイント(他のデバッガーではウォッチポイントと呼ばれることもあります)を使用します。 デバッグログメッセージを処理するための、より柔軟で一元化された方法が提供されます。

        ロギングブレークポイントをよりすばやく設定する

        非停止 ログブレークポイントを設定するには、 Shift を押しながらガターをクリックします。 これにより、プログラムの実行は中断されず、代わりに Breakpoint reached: LineBreakpoint.php:10 のようなメッセージがログに記録されます。 エディターで現在表示されている式をログに記録する場合は、 Shift を押しながらガターをクリックする前に、その式を選択します。

        ブレークポイントの説明を追加する

        プロジェクトに多数のブレークポイントがある場合は、検索しやすくするためにブレークポイントに説明を追加できます。 これを行うには、 ブレークポイント ダイアログ Ctrl+Shift+F8 でブレークポイントを右クリックし、メニューから 説明の編集 を選択します。 ブレークポイント名の入力を開始すると、そのブレークポイントにフォーカスが移ります。

        Jump to source

        ブレークポイント ダイアログから選択したブレークポイントが設定されているコード行に移動するには、 F4 を押します。

        2026 年 11 月 9 日