ホームページ >開発ツール >VSCode >VSCODE を使用して WINDOWS で PHP7 ソース コードをデバッグする

VSCODE を使用して WINDOWS で PHP7 ソース コードをデバッグする

(*-*)浩
(*-*)浩オリジナル
2019-11-21 11:21:084608ブラウズ

私は少し前に PHP 拡張機能の開発に携わっていて、PHP ソース コードのデバッグ要件がありました。しかし、インターネット上のほとんどのチュートリアルは LINUX でのデバッグ チュートリアルです。WINDOWS システムに関するチュートリアルは非常に少なく、そのプロセスはざっくり説明。そこで、WINDOWS 上でデバッグ環境を構築してみることにしましたが、結局のところ、原理は同じです :)。

VSCODE を使用して WINDOWS で PHP7 ソース コードをデバッグする

1. 準備

以下は私の開発マシンの設定であり、さらなるエラーを減らすために私のものと一致しています。ツールのバージョンによる問題の可能性。

1.Visual Codeソースコード編集およびデバッグツール(VSは通常、Winの開発に必要なものすべてをもたらします。 ##赤でマークされた領域をインストールする必要があります

3.PHP7 ソース コード (github からプルすることも選択できます)

ソース コードのパッケージ バージョンを選択できます

VSCODE を使用して WINDOWS で PHP7 ソース コードをデバッグする4.PHP7- SDK

私の開発マシンは 64 ビットです。PHP7 をコンパイルしているため、 64 ビットの deps-7.1-vc14-x64 (拡張依存関係ライブラリ パッケージ) を選択し、php-sdk-binary-tools. フォルダーを作成し、php-sdk-binary-tools-xxx.zip をこのフォルダーに解凍し、deps- vc14-x64 フォルダーに加え、deps-7.1-vc14-x64.7z もこのフォルダーに解凍します。

VSCODE を使用して WINDOWS で PHP7 ソース コードをデバッグする同時に、php-sdk-binary-tools の bin パスを WINDOWS システム変数 PATH に追加します。 deps-7.1-vc14-x64 はこの記事では当面使用しませんが、付属の拡張機能の一部をコンパイルするライブラリとヘッダー ファイルが含まれているため、最初にダウンロードすることもできます。付属の拡張機能をコンパイルするには、それを使用できます:)。

2. ソース コードをコンパイルします

VSCODE を使用して WINDOWS で PHP7 ソース コードをデバッグするVS をインストールした後、スタート メニューの [ネイティブ] の Visual Studio 2017 フォルダーで x64 を実行します。 Tools Command Prompt for VS 2017

実行後、PHP7 ソース コード ディレクトリに入ります

1. buildconf.bat を実行して WIN 構成ファイルを生成します(configure.js)VSCODE を使用して WINDOWS で PHP7 ソース コードをデバッグする

2.configure.bat --help を実行すると、サポートされているコンパイル パラメータを表示できます

3.configure.bat --disable-all --enable-cli を実行します。 --enable-debug (簡単なコンパイルをデモンストレーションするために、自分でパラメーターを追加できます)

VSCODE を使用して WINDOWS で PHP7 ソース コードをデバッグする4. nmake コマンドを実行してコンパイルを開始します

ローカル マシンの構成では、コンパイル後の実行可能ファイルはソース内にあります。コード ディレクトリの x64/Debug_TS の下で、後でデバッグを開始する準備をすることができます。

3. VSCODE を使用したデバッグ

デバッグ方法は、追加プロセス デバッグと実行起動デバッグの 2 種類に分けられます。まずは起動デバッグの実行について紹介します。

まず、テスト用の php ソース コード ファイルをソース コード ディレクトリの x64/Debug_TS に作成します。

次に、メニュー [デバッグ] > [構成を開く] を選択し、[C (Windows)] を選択します。

最後に、構成ファイルを次のように変更しますVSCODE を使用して WINDOWS で PHP7 ソース コードをデバッグする

PHP SAPI の cli をコンパイルしたことがあるので、sapi/cli/php_cli.c ソース ファイルを開き、1197 行目にある main 関数を見つけて、そこにブレークポイントを置きます。

VSCODE を使用して WINDOWS で PHP7 ソース コードをデバッグする次に、VS の DEBUG コントロール パネルに移動してデバッグを実行します。

VSCODE を使用して WINDOWS で PHP7 ソース コードをデバッグする

ブレークポイントがヒットしたことがわかります。 VSCODE を使用して WINDOWS で PHP7 ソース コードをデバッグする

アタッチされたプロセスのデバッグ構成も同様です。メニュー オプション [デバッグ] -> [構成を開く] をクリックし、[構成の追加] を選択します。ポップで C/C (Windows) AttachVSCODE を使用して WINDOWS で PHP7 ソース コードをデバッグする を選択します。

最終的な構成ファイルは次のとおりです:

VSCODE を使用して WINDOWS で PHP7 ソース コードをデバッグする追加のプロセスのデバッグのデモンストレーションを容易にするために、最初に PHP -S を使用して組み込みサーバー (この php はコンパイルおよび生成した php.exe ファイルである必要があります) を起動します。 php ファイルが置かれているディレクトリ。

VSCODE を使用して WINDOWS で PHP7 ソース コードをデバッグする#アクセス効果は次のとおりです:

VSCODE を使用して WINDOWS で PHP7 ソース コードをデバッグする

#デバッグを開始する方法は同じで、デバッグ パネルで (Windows) [アタッチ] を選択します。実行する VSCODE の。

VSCODE を使用して WINDOWS で PHP7 ソース コードをデバッグする

#次に、ポップアップ プロセス リストで PHP プロセスを選択し、デバッグ状態への移行を開始します。

VSCODE を使用して WINDOWS で PHP7 ソース コードをデバッグするtest.php で array_push 関数を使用します。今回は、この関数の実装ブレークポイントに移動し、ext/standard/array.c を開き、2540 行目を見つけてブレークポイントを設定します。

VSCODE を使用して WINDOWS で PHP7 ソース コードをデバッグする次に、ブラウザで http://127.0.0.1:8080/test.php にアクセスして、ブレークポイントをトリガーします。

VSCODE を使用して WINDOWS で PHP7 ソース コードをデバッグする4. 最後に

この記事のデバッグ方法は、拡張開発のデバッグ方法としても使用できます。これは Universe IDE Visual Studio に適用されますが、WINDOWS で PHP ソース コードをデバッグするために VSCODE を構成するという私のアイデアは、他のプラットフォーム (Mac/Linux など) にも適用できます。 Visual Studio での PHP ソース コードのデバッグに興味がある場合は、この記事をアイデアとして使用し、自分で考えてみることをお勧めします~

以上がVSCODE を使用して WINDOWS で PHP7 ソース コードをデバッグするの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。