1、解壓縮php-sdk到目錄E:\tang\php_stdio\php-sdk
2、設定vs2013編譯器環境變數:開啟cmd窗口,執行vcvarsall.bat(路徑根據vs的安裝路徑決定)
3、建立開發目錄:
開啟vs2013本機指令提示工具,注意如果編譯64位元的請開啟vs2013 x64指令提示工具,我用的是x64版本。切換到E:\tang\php_stdio\php-sdk目錄下,分別運行:
bin\phpsdk_setvars.bat
bin\phpsdk_buildtree.bat php55dev-x64
運行後,在E:\tang\php_stdio\php-sdk目錄下又多了一個php55dev-x64目錄。
4、將deps解壓縮到如下目錄:
E:tang\php_stdio\php-sdk\php55dev-x64\vc9\x64\
原來這個目錄下的deps目錄下的所有子目錄都是空目錄,解壓縮後,應該複製進很多必要的模組/擴充所需的函式庫檔案。
5、接下來,PHP-5.5.38原始碼目錄複製一份到以下目錄:
E:\tang\php_stdio\php-sdk\php55dev-x64\vc9\x64\
6、進入php原始碼目錄
cd E:\tang\php_stdio\php-sdk\php55dev-x64\vc9\x64\php-5.5.38
運作
buildconf
然後就可以先試著編譯php了。最開始,一般編譯盡可能少的模組,先讓核心能正常編譯出來:
configure –disable-all –enable-cli
7、編譯PHP,執行
nmake
至此,php最核心部分及一個命令列工具就編譯出來了。
PHP扩展的基础结构相同,为方便开发PHP提供了ext_skel和ext_skel_win32.php分别是linux、windows下的扩展框架搭建工具。 此次讲的是Windows中搭建PHP扩展开发环境,所以使用的是ext_skel_win32.php。用它生成的扩展框架,可以直接用VS打开进行书写代码和编译。其步骤如下:
1、切換到目錄ext下:
cd E:\tang\php_stdio\php-sdk\php55dev-x64\vc9\x64\php-5.5.38\ext
2、在目錄下建立檔案test_extension.def,檔案內容為擴充將要匯出的函數,如下:
int a(int x, int y)string b(string str, int n)
3、執行指令產生擴充框架
php.exe ext_skel_win32.php –extname=test_extension –proto=test_extension.def
成功後產生test_extension目錄。
4、進入test_extension目錄下,用vs2013開啟test_extension.dsp工程檔。如果編譯的是64位元擴充注意修改屬性為x64平台。編譯完成後產生php_test_extension.dll
5、將php_test_extension.dll放到PHP的ext目錄下,在php.ini檔加上extension=php_test_extension.dll
6、測試
運行:php.exe test_extension.php(其中test_extnesion.php是在產生的擴充框架目錄下)
擴充呼叫成功會出現:
Functions available in the test extension: confirm_test_extension_compiledab Congratulations! You have successfully modified ext/test_extension/config.m4. Mo dule test_extension is now compiled into PHP.
一個簡單的PHP擴充就這樣開發完成,要注意以下幾點:
1、注意檔案位數,32位元或64位元,必須與PHP的版本對應
2、注意擴充必須和PHP使用相同版本的編譯器
以上是PHP擴充開發-windows開發環境建置詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!