ホームページ > バックエンド開発 > PHPチュートリアル > Windows での php5.5 開発環境と開発拡張機能の構成、windowsphp5.5_PHP チュートリアル

Windows での php5.5 開発環境と開発拡張機能の構成、windowsphp5.5_PHP チュートリアル

WBOY
リリース: 2016-07-13 10:10:54
オリジナル
845 人が閲覧しました

Windows、windowsphp5.5でphp5.5開発環境と開発拡張機能を構成します

インターネット上には多くのチュートリアルがありますが、Windows での拡張機能の開発は比較的少なく、ほとんどが php5.3 バージョンより前のものであることがわかりました。今日は php5.5 を使用して php 拡張機能の開発について説明します。バージョンについて説明します

Windows環境(私個人のもの)

コードをコピーします コードは次のとおりです:

Windows 8.1 Enterprise Edition (mac os Boot Camp でインストール)
Visual Studio 2012 バージョン
msysgit (http://msysgit.github.io/ ダウンロード)
php-sdk-binary-tools-20110915.zip (http://windows.php.net/downloads/php-sdk/Download)
deps-5.5-vc11-x86.7z (http://windows.php.net/downloads/php-sdk/Download)
php-5.5.20 (http://php.net/downloads.php からダウンロード、このバージョンを選択できます)

第一歩
たとえば、php-sdk-binary-toolsのバイナリパッケージをC:php-sdkフォルダに解凍しました。現在のディレクトリ構造は次のとおりです。

コードをコピーします コードは次のとおりです:
C:php-sdk
--ビン
--スクリプト
--シェア

次に、Visual Studio 2012 をインストールした後、VS2012 ネイティブ ツール コマンド プロンプト コマンド ライン ツールを開きます

コードをコピーします コードは次のとおりです:
#ディレクトリを入力してください
cd C:php-sdk
#環境変数を設定する
binphpsdk_setvars.bat
#よく使うphp-sdkディレクトリを作成します
binphpsdk_buildtree.bat phpdev

binphpsdk_buildtree.bat ファイルを開くと、VC11 ではなく VC9 のみが作成されていることがわかりますが、php5.5 バージョンを開発する場合は、現時点では C:php- をコピーする必要があります。 sdkphpdevvc9 から C:php-sdkphpdevvc11 まで、現在のディレクトリ構造は次のとおりです:

コードをコピーします コードは次のとおりです:
C:php-sdkphpdev
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 


deps-5.5-vc11-x86.7z をダウンロードしたので、deps-5.5-vc11-x86.7z を解凍し、C:php-sdkphpdevvc11x86deps フォルダーに上書きする必要があります。これには、必要なライブラリ ファイルといくつかの必要なツールが含まれています。 、など。
次に、ダウンロードした php-5.5.20.tar.bz2 を C:php-sdkphpdevvc11x86php-5.5.20 フォルダーに解凍します。
phpをコンパイルしてインストールします


VS2012 ネイティブ ツール コマンド プロンプトに戻る

#phpソースディレクトリのフォルダに入ります cd c:php-sdkphpdevvc11x86php-5.5.20 ビルド構成

#

を使用して拡張コマンドとコンパイル コマンドを表示します --help を設定します
php-sdk

php をインストールしていない場合は、まず php をコンパイルしてインストールできます
。 --disable-all --enable-cli を構成します
次に、「nmake」と入力して PHP をビルドし、コンパイルします
が表示されます。 んまけ

php.exe ファイルが C:php-sdkphpdevvc11x86php-5.5.20Release_TS フォルダーに生成されるので、コマンド ラインで php コマンドを使用できるように、このパスを環境変数に追加します。




PHP の最初の拡張機能を開発しています

widuu() 関数を開発したい場合、効果は次のようになります

コードをコピーします

コードは次のとおりです:

functionwiduu($string){ 「最初の拡張機能 {$string} は問題ありません」を返します; }


拡張機能のディレクトリを入力し、拡張機能のフォルダーを生成します

コードをコピーします

コードは次のとおりです:

cd C:php-sdkphpdevvc11x86php-5.5.20ext #php ext_skel_win32.php --extname=拡張機能名を入力してください php ext_skel_win32.php --extname=widuuweb

現時点では、C:php-sdkphpdevvc11x86php-5.5.20ext にディレクトリ widuuweb があり、
で widuuwebphp_widuuweb.h を開きます。 #PHP_MINFO_FUNCTION(widuuweb); 次の行に独自の関数を記述します。たとえば、widuu() 関数を定義します
PHP_FUNCTION(ウィドゥ);
php_widuuweb.c を開いて、PHP_FUNCTION (confirm_widuuweb_compiled) の下に関数を記述します




コードをコピーします

コードは次のとおりです:


PHP_FUNCTION(ウィドゥ){
char *arg_string = NULL;
int arg_len,str_len;
文字 *文字列;
If(zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC,"s",&arg_string,&arg_len) == FAILURE){
戻る;
}
str_len = spprintf(&string,0,"最初の拡張子 %.78s は問題ありません",arg_string);
RETURN_STRINGL(string,str_len,0);
}

次に、PHP_FE(confirm_widuuweb_compiled, NULL) を見つけて、以下に関数を登録します

コードをコピーします コードは次のとおりです:

const zend_function_entry widuuweb_functions[] = {
PHP_FE(confirm_widuuweb_compiled, NULL) /* テストのため、後で削除します */
PHP_FE(ウィドゥウ,NULL)
PHP_FE_END /* widuuweb_functions[] の最後の行である必要があります */
};

C:php-sdkphpdevvc11x86php-5.5.20extwiduuwebconfig.w32を変更して削除します
// ARG_ENABLE("widuuweb", "widuuweb サポートを有効にする", "no");
前のコメント、コマンドラインと比較して、 cd .. php-5.5.20 ディレクトリに移動し、次のコマンドを入力します
buildconf --force
#ビュー拡張機能
--help を設定します
エラーがある場合は、それを開いてディレクトリ内のconfigure.jsを確認してください。エラーが発生したのはconfigure.jsの4791行目でした。 ARG_ENABLE("widuuweb", "widuuweb サポートを有効にする", "いいえ"); 余分な */ コメントがあります。削除してから再度入力してください
--help を設定します
見たよ、行列だ
--enable-widuuweb widuuweb サポートを有効にする
次に、設定します
--disable-all --enable-cli --enable-widuuweb=shared を設定します
php動的拡張機能

その中で、--enable-widuuweb=shared 動的拡張は静的拡張の正反対です。

次に、nmake と入力します。完了後、C:php-sdkphpdevvc11x86php-5.5.20Release_TS ディレクトリに php_widuuweb.dll ファイルが見つかりました。これをテスト用の環境に配置できます。

ローカルに PHP 環境がインストールされていないが、私のように PHP をコンパイルしただけの場合、テストしたい場合は、効果を確認するために静的コンパイルをお勧めします
configure --disable-all --enable-cli --enable-widuuweb=static
んまけ
次に、Release_TS ディレクトリに
を入力します。 php -r "echo widuu('widuu');" //出力「最初の拡張子 widuu は問題ありません」
わかりました。今後はゆっくり説明します。基本的な ZEND_API については、メッセージを残してください。

http://www.bkjia.com/PHPjc/932468.html

本当http://www.bkjia.com/PHPjc/932468.html技術記事 Windows での php5.5 開発環境と開発拡張機能の構成 Windowsphp5.5 のチュートリアルはインターネット上にたくさんありますが、Windows での拡張機能の開発は比較的少なく、ほとんどが php5.3 バージョンであることがわかりました。
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート