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

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

新規登録して質問してみよう
ただいま回答率
85.48%
PHP

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

XAMPP

XAMPP(ザンプ)は、ウェブアプリケーションの実行に必要なフリーソフトウェアをパッケージングしたApacheディストリビューションです。 XAMPPひとつインストールするだけで、Apache、MySQL、PHP、Perlなどのソフトウェアと、 phpMyAdminなどの管理ツール、SQLiteなどのソフトウェアやライブラリモジュールなどを利用することが可能です。

Q&A

2回答

14447閲覧

デバッグ(XAMPP + VSCode + xdebug)でブレークポイントが続行できない

nn01a

総合スコア10

PHP

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

XAMPP

XAMPP(ザンプ)は、ウェブアプリケーションの実行に必要なフリーソフトウェアをパッケージングしたApacheディストリビューションです。 XAMPPひとつインストールするだけで、Apache、MySQL、PHP、Perlなどのソフトウェアと、 phpMyAdminなどの管理ツール、SQLiteなどのソフトウェアやライブラリモジュールなどを利用することが可能です。

0グッド

3クリップ

投稿2018/10/24 07:33

編集2018/10/24 07:39

前提・実現したいこと

Visual Studio CodeでXdebugを用いたPHPのステップ実行

発生している問題・エラーメッセージ

Visual Studio Code上でPHP Debugでデバッグを行っているのですが、
ブレークポイントで止まっている状態から「続行(F5)」が行えません。
ステップオーバーも行えません。
設置したブレークポイントで停止はするのですが、次の行や次のブレークポイントに移動できません。
変数の中身やウォッチ式は正常に動いております。

エラー発生で停止した後、「停止」を行うと画面上にはエラー情報は表示されます。

設定

php.iniのxdebug設定 [xdebug] zend_extension = "C:\xampp\php\ext\php_xdebug-2.6.1-7.2-vc15.dll" xdebug.profiler_append = 0 xdebug.profiler_enable = 1 xdebug.profiler_enable_trigger = 0 xdebug.profiler_output_dir = "C:\xampp\tmp" xdebug.profiler_output_name = "cachegrind.out.%t-%s" xdebug.remote_enable = 1 xdebug.remote_autostart = 1 xdebug.remote_handler = "dbgp" xdebug.remote_host = "127.0.0.1" xdebug.remote_port = 9000 xdebug.auto_trace = 1
XDebugのlaunch.json { "name": "Listen for XDebug", "type": "php", "request": "launch", "port": 9000 },

試したこと

VScodeのダウングレード(1.25.1)
PHPDebugの再インストール

補足情報(FW/ツールのバージョンなど)

Windows10 64bit
VScode 1.28.2
XAMPP 3.2.2
PHP 7.2.9

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

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

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

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

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

guest

回答2

0

もう遅いかと思いますが、、、
同様の現象が起きたので自分の場合の解決策をメモしておきます。

VSCodeのウォッチ式にメソッドを追加していませんか?

1.ブレークポイントで止まる
2.(ウォッチ式のメソッドが実行される)
3.(メソッドが正しく実行できず)エラー

ということだと思います。

ブレークポイントで止まったときに
ウォッチ式のメソッドの値が「error evaluating code」となっていたら
同じ原因かと思います。(エラー表示時には値は「無効」となります)

誰かの参考になれば幸いです。

投稿2019/01/24 02:53

rina

総合スコア54

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

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

tamahagane

2020/02/09 05:40

同じ症状を抱えていて困っていたのですが、ウォッチ式を全て削除したら無事解消しました! まさかこんな罠があったなんて...... 本当に助かりました ありがとうございます!!!
rina

2020/02/14 02:57

良かったです♪わざわざ報告いただいて嬉しいです。ありがとうございます。
退会済みユーザー

退会済みユーザー

2020/02/14 03:03

元々スレッド関連が弱いからそう言うこともあるかも
dai-komatsu

2020/06/19 15:51

こうゆう質問関連の投稿サイトに対して、今まで読専でしたが、 この記事を発見した時、思わずユーザー登録するほど、本当に助かりました!
rina

2020/07/15 08:20

asahina1979さん そうなんですね、そういった面には疎く…勉強します da-komatsuさん 同じ箇所で困っていたのですね、役に立ったようで良かったです!
guest

0

xdebugをwindowsのphpに設定する方法で悩んだ件 - Qiita
これ試すといいよ。ってもう組み込んであったかぁ。

ダウンロードしたDLLの「プロパティ」を開いて、
ブロックの解除をするのもお忘れなく。

手元の環境で追試してみました。
php.iniに書き加えた部分:

zend_extension=C:\xampp71\php\ext\php_xdebug-2.6.1-7.1-vc14.dll
xdebug.remote_enable = 1
xdebug.remote_autostart = 1
xdebug.remote_connect_back = 1

もちろんapacheサービスの再起動も。

投稿2018/10/24 10:15

編集2018/10/24 11:41
退会済みユーザー

退会済みユーザー

総合スコア0

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

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

nn01a

2018/10/25 07:59

DLLの「プロパティ」からブロックの解除を行い、 xdebug.remote_connect_back = 1をphp.iniに追記したのち apacheサービスの再起動をおこないましたが、 残念ながら状況変わりませんでした。
退会済みユーザー

退会済みユーザー

2018/10/25 10:09

apacheに組み込まれているphpのphp.iniが場所が違ったりしないか、 phpinfo()で確認するとか、 あるいはモジュールモードじゃなくcgiモードだったりしないかとか、 xdebugまわりの指定を私の回答にある3行だけに減らすとか、 ダメモトでいじってみてください。
nn01a

2018/10/26 05:56

phpinfoで確認しましたが、組み込まれているphp.iniも間違っていないと思われます。 phpinfoにApache 2.0 Handlerとあったのでモジュールモードでした。 また、php.iniのxdebugの設定をいろいろいじって何パターンも試しましたが、 うまくいきませんでした。。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問