ホームページ >バックエンド開発 >PHP7 >PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

angryTom
angryTom転載
2019-11-01 11:57:513435ブラウズ

PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

PHP7 ウィンドウでカスタム拡張機能を追加し、PHP ソース コードをコンパイルする

必要な資料

推奨チュートリアル:php7 チュートリアル

① コンパイルする必要があるバージョンを確認し、PHPINFO を確認して、PHP バージョン、VC バージョン、および PHP 桁を確認します。 PHP VC のバージョンに応じて、対応する Visual Studio またはコンパイラーをダウンロードします。下の図のブロガーのバージョンは VC15 です。Visual Studio 2017 バージョンをダウンロードする必要があります

PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

② 準備必要に応じて PHP ソース コードをダウンロードします。拡張バージョンのダウンロードは、WINDOWS ソース コードのダウンロード アドレス (https://windows.php.net/download/) に対応します。

③ PHP-sdk パッケージをダウンロードします (クリックしてダウンロード) (https://github.com/microsoft /php-sdk-binary-tools)

④PHP をローカルで利用可能にし、環境変数を設定する必要があります

⑤ダウンロードした PHP を保存した後-sdk、/binディレクトリを設定 環境変数

操作開始

①バージョンに応じた処理スクリプトを実行ブロガーはVC15 X64なのでphp-sdkを実行-vc15-x64.bat (ダウンロードされていない場合) Visual Studio およびコンパイラの VC バージョンに対応して、処理スクリプトはフラッシュするだけで終了します。

11PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

#処理スクリプトが正常に実行されました

PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

②コマンド phpsdk_buildtree phpdev を実行します。phpdev は好みに応じて変更できます (名前は 1 つだけです)。実行後、phpsdk_buildtree スクリプトは現在使用されている VC バージョンに基づいてパスを作成し、新しく作成されたディレクトリ


PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

その中に deps フォルダーが存在します。とりあえず、用意したPHPのソースコードをdepsと同階層のディレクトリに入れてください

PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

解凍したPHPのソースコードディレクトリに入り、phpsdk_depsを実行してください-u 依存関係パッケージをダウンロードするには、ネットワーク速度が遅すぎます。友人はこの手順をスキップできます

③カスタム PHP 拡張機能を追加します

ソース コード/拡張子を入力し、ext_skel_win32.php を見つけます。 PHP7.3 バージョンにはこのファイルがありません。ext_skel# を直接使用できます

PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします##PHP7.3 バージョンは使用できます

#PHP7.2 は LINUX を実行するため、より困難です スクリプトは Windows では直接実行できないため、実行するツールをダウンロードする必要があります ブロガーは Git をインストールしています Git は LINUX コマンド セットを統合しているため、実行できますインストールしていない友人も、Cygwin シミュレーション環境をダウンロードできますPHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

Execute php ext_skel_win32.php --extname=loud namePHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

実行に成功すると、/ext## の下にこのフォルダーが作成されます。 PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

#my_test.c を変更するだけです。および config.m4、1 つのプログラム本体と 1 つの構成ファイル

1PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルしますmy_test.c と入力して、下の図の関数を見つけます

そうすれば、ロジックを書くことができます

1PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

完了後、コンパイルを開始します (注: コンパイルとは、ext_skel_win32.php の実行に使用する CMD ではなく、VC で開かれた CMD です。終了した場合は、もう一度 VC15-x64.bat を入力します。もちろん、PHP7.3 ではこれを無視できます)

1PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

#ソース コードのルート ディレクトリに移動し、buildconf を実行します

PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

configure --help を実行します

1PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

##PHP7.2 バージョンにはいくつかの小さな問題があるため、configure.js ファイルを開きます

1PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

別の解決策

拡張機能のソース コードの config.w32 を開き、 // を見つけます。それ以外の場合は、ARG_ENABLE コメントを使用して削除し、buildconf を再実行します。

操作が成功すると、作成した拡張機能が表示されます

1PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

configure --disable-all --enable-cli --enablie-my_test=shared を実行します。shared が追加されていない場合、.dll ファイルはコンパイルされません

1PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

拡張機能が開始されようとしていることがわかります

nmake を実行してコンパイルを開始します

2PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

コンパイルが成功しました。次に、(ブロガーは X64 です。32 ビットをコンパイルする場合は X86 です)\x64\Release_TS

2PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

と入力します。拡張機能を参照してください

2PHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルします

拡張機能 PHP の使用方法を書き留める必要はありませんが、拡張機能に問題がある場合は、nmake clean、recompile を実行できます。それでも問題が解決しない場合は、選択したコンパイル済みバージョンが、使用している PHP バージョンに対応していないことを意味します。

以上がPHP7 Windows はカスタム拡張機能を追加し、PHP ソース コードをコンパイルしますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。

関連記事

続きを見る