您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關如何在windows系統中搭建一個php5.5開發環境,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
php是一個嵌套的縮寫名稱,是英文超級文本預處理語言,它的語法混合了C、Java、Perl以及php自創新的語法,主要用來做網站開發,許多小型網站都用php開發,因為php是開源的,從而使得php經久不衰。
windows環境
windows 8.1 企業版(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/下載)
deps-5.5-vc11-x86.7z (http://windows.php.net/downloads/php-sdk/下載)
php-5.5.20 (http://php.net/downloads.php下載,這個版本不定自己選擇)
第一步
解壓php-sdk-binary-tools的二進制包,譬如我解壓到我的C:\php-sdk文件夾中,現在的目錄結構如下
復制代碼 代碼如下:
C:\php-sdk
--bin
--script
--share
然后,這個是你已經安裝完成了visual studio 2012,打開VS2012 Native Tools Command Prompt命令行工具
復制代碼 代碼如下:
#進入目錄
cd C:\php-sdk
#設置環境變量
bin\phpsdk_setvars.bat
#創建常用的php-sdk目錄
bin\phpsdk_buildtree.bat phpdev
如果我們打開bin\phpsdk_buildtree.bat文件就會發現它只創建到VC9,沒有VC11,但是我們如果開發php5.5版本,我們需要的是VC11,這時候我們就要把C:\php-sdk\phpdev\vc9復制一份到C:\php-sdk\phpdev\vc11,現在的目錄結構如下:
復制代碼 代碼如下:
C:\php-sdk\phpdev\
--vc6
--vc8
--vc9
--vc11
因為我下載的deps-5.5-vc11-x86.7z,所以我要解壓deps-5.5-vc11-x86.7z到C:\php-sdk\phpdev\vc11\x86\deps文件夾下覆蓋,里邊都是我們需要的庫文件和一些必要的工具等等。
然后,將我們下載的php-5.5.20.tar.bz2解壓到C:\php-sdk\phpdev\vc11\x86\php-5.5.20文件夾中。
編譯安裝php
回到VS2012 Native Tools Command Prompt
#進入php源目錄文件夾
cd c:\php-sdk\phpdev\vc11\x86\php-5.5.20
buildconf
#查看帶的擴展和編譯命令
configure --help
php-sdk
如果你沒有安裝php,現在這里就幫助到你了,可以先編譯安裝一下php
configure --disable-all --enable-cli
然后,你會看到Type 'nmake' to build PHP,然后編譯
nmake
在C:\php-sdk\phpdev\vc11\x86\php-5.5.20\Release_TS文件夾下就生成了php.exe文件,環境變量中加入這個路徑,好在命令行中能使用php命令。
開發PHP的第一個擴展
假如我們要開發一個widuu()函數,實現的效果如下
復制代碼 代碼如下:
function widuu($string){
return "your first extension {$string} is ok";
}
進入擴展目錄,生成擴展文件夾
復制代碼 代碼如下:
cd C:\php-sdk\phpdev\vc11\x86\php-5.5.20\ext
#輸入php ext_skel_win32.php --extname=擴展名稱
php ext_skel_win32.php --extname=widuuweb
這時候我們在C:\php-sdk\phpdev\vc11\x86\php-5.5.20\ext就看到了自己的目錄widuuweb,打開widuuweb\php_widuuweb.h,在
#PHP_MINFO_FUNCTION(widuuweb);下一行寫入自己的函數,譬如我定義的是widuu()函數
PHP_FUNCTION(widuu);
打開php_widuuweb.c編寫函數,在PHP_FUNCTION(confirm_widuuweb_compiled)下
復制代碼 代碼如下:
PHP_FUNCTION(widuu){
char *arg_string = NULL;
int arg_len,str_len;
char *string;
if(zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC,"s",&arg_string,&arg_len) == FAILURE){
return;
}
str_len = spprintf(&string,0,"your first extension %.78s is ok",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) /* For testing, remove later. */
PHP_FE(widuu,NULL)
PHP_FE_END /* Must be the last line in widuuweb_functions[] */
};
修改C:\php-sdk\phpdev\vc11\x86\php-5.5.20\ext\widuuweb\config.w32,去掉
// ARG_ENABLE("widuuweb", "enable widuuweb support", "no");
前邊的注釋,vs命令行,輸入cd .. 到php-5.5.20目錄中,輸入下面的命令
buildconf --force
#查看擴展
configure --help
如果,有錯誤,大家可以打開,目錄下configure.js查看,我這個出現了錯誤,是configure.js的4791行,
ARG_ENABLE("widuuweb", "enable widuuweb support", "no"); */
多了一個*/的注釋,去掉就可以了,然后再輸入
configure --help
就看到了,有一行
--enable-widuuweb enable widuuweb support
然后配置
configure --disable-all --enable-cli --enable-widuuweb=shared
php動態擴展
其中--enable-widuuweb=shared動態擴展,正好與靜態擴展相對。
然后輸入nmake,完成后,我們在C:\php-sdk\phpdev\vc11\x86\php-5.5.20\Release_TS目錄下就發現了php_widuuweb.dll文件,可以放到環境中測試了。
如果你本地沒有安裝php環境,而是跟我一樣只是編譯了php,如果測試,我建議靜態編譯看效果
configure --disable-all --enable-cli --enable-widuuweb=static
nmake
然后,你可以再Release_TS目錄下,輸入
php -r "echo widuu('widuu');" //輸出"your first extension widuu is ok"
以上就是如何在windows系統中搭建一個php5.5開發環境,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。