まず、XAMPP をオンにして、次のサービスを開始しました。
ちなみに、PHP バージョンは 7.3.3 です。phpinfo()
ブラウザで確認してみました。スクリーンショットは次のとおりです。
そして私は行きました翻訳元このバージョンの Xdebug をダウンロードするには:
このファイルを にコピーするとC:\xampp\php\ext
、 という名前のファイルがあることがわかりましたphp_xdebug.dll
。とにかく、名前を変更せずに Xdebug ファイルをパスに呼び出しました ( php_xdebug-2.7.2-7.3-vc15-x86_64.dll
)。
php.ini
次に、インターネットの記事からコードをコピーしました。
zend_extension = "C:\xampp\php\ext\php_xdebug-2.7.2-7.3-vc15-x86_64.dll"
[XDebug]
xdebug.remote_enable = 1
xdebug.remote_autostart = 1
xdebug.remote_port = 9000
しかし、ポートが 9000 で、ポートがまったく機能しない理由がわかりません。Chromelocalhost:9000
のアドレス バーに入力すると、結果ページには、localhost が接続要求を拒否したことが表示されます。
しかし、私はまだ続けました。VS Code に「PHP Debug」拡張機能をインストールしました。拡張機能はlaunch.json
以下のとおりです。
{
"version": "0.2.0",
"configurations": [
{
"name": "Listen for XDebug",
"type": "php",
"request": "launch",
"port": 9000
},
{
"name": "Launch currently open script",
"type": "php",
"request": "launch",
"program": "${file}",
"cwd": "${fileDirname}",
"port": 9000
}
]
}
最後に、新しい PHP ファイルを作成してデバッグしました。ブラウザでファイルを開くと、デバッグ プログラムが動作しませんでした。問題がどこにあるのか、また正確なデバッグ手順を教えていただけますか?
更新: ついに問題が分かりました。9000 ポート番号が使用中でした。そこで、cmd に「netstat -ano」と入力して、ポート 9000 と対応する PID 値を見つけました。ここに画像の説明を入力してください次に、「taskkill /PID 4380 /F」と入力して、ポートを占有しているプロセスを強制終了します。最後に、PHP サービスを再起動します。これで、この問題は解決しました。ただし、XAMPP の phpinfo() で確認できる正しい xdebug バージョンがインストールされていることを確認してください。コメント エリアで助けてくれた友人たちに感謝します。