WAMPServer可以讓開發者在Windows系統下快速搭建WAMP環境,它支持多版本的Apache、MySQL、PHP之間的相互切換,互不影響,對於PHPer開發者來講極為方便快速。
以下是在WAMPServer下同時支持PHP5.3、PHP5.4、PHP5.5、PHP5.6的步驟:
1、安裝WAMPServer
根據自己的操作系統選擇相應的WAMP版本,我這里選擇WAMPSERVER-64 BITS & PHP 5.5-2.5,雙擊安裝,選擇安裝目錄即可,超級簡單,安裝完了,建議最好完全把WAMPServer退出比較好。
根據我安裝的版本,這里已經默認安裝了PHP5.5.12,如下圖,可以發現多了兩個特別文件:phpForApache.ini、wampserver.conf。
2、下載PHP二進制包
PHP目前提供PHP5.3、PHP5.4、PHP5.5、PHP5.6版本,因為我安裝的是WAMPSERVER-64 BITS,所以對應的PHP版本只能是64位,到Windows PHP下載TS版本(Thread-Safe-VC9-X64)對應的PHP二進制ZIP包,並解壓縮二進制包到WAMP安裝目錄,如D:\Program Files\wamp\bin\php下。
3、增加PHP多版本支持
以我的安裝目錄為參照,拷貝php5.5.12下的wampserver.conf文件分別到PHP各版本目錄;
以php5.3.15為例,拷貝目錄下的php.ini-development並重命名為phpForApache.ini,根據自己要求修改phpForApache.ini里的PHP環境參數,保存退出;
以上完成了PHP5.3.15版本的添加,其它版本添加類似。
4、修改phpForApache.ini文件 和wampmanager.ini文件
phpForApache.ini文件里面819行的:
extension_dir = ".",改為extension_dir = "D:/Program Files/wamp/bin/php/php5.3.15/ext/"新版本PHP目錄的ext路徑。
修改phpForApache.ini的時間的話,不然會在創建一些帶有時間類型的字段的表會報錯!!phpForApache.ini文件里面1008行的:
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone =Asia/Shanghai
修改 wampmanager.ini文件,不然會出現切換php的版本函數調用不對。
在wampmanager.ini文件中沒有自動生成前面加的PHP版本,需要
在362行里面手動添加:
Type: item; Caption: "5.5.12"; Action: multi; Actions:switchPhp5.5.12
復制上面一行修改成添加的php版本,插入到后面:
Type: item; Caption: "5.3.15"; Action: multi; Actions:switchPhp5.3.15; Glyph: 13
特別注意!!
還要在把365行里面復制同樣一行:
[switchPhp5.5.12]
Action: service; Service: wampapache64; ServiceAction: stop; Flags: ignoreerrors waituntilterminated
Action: run; FileName: "D:/Program Files/wamp/bin/php/php5.5.12/php-win.exe";Parameters: "switchPhpVersion.php 5.5.12";WorkingDir: "D:/Program Files/wamp/scripts"; Flags: waituntilterminated
Action: run; FileName: "D:/Program Files/wamp/bin/php/php5.5.12/php-win.exe";Parameters: "-c . refresh.php";WorkingDir: "D:/Program Files/wamp/scripts"; Flags: waituntilterminated
Action: run; FileName: "net"; Parameters: "start wampapache64"; ShowCmd: hidden; Flags: waituntilterminated
Action: resetservices
Action: readconfig;
復制一行,修改成添加的php版本,插入到后面:
[switchPhp5.3.15]
Action: service; Service: wampapache64; ServiceAction: stop; Flags: ignoreerrors waituntilterminated
Action: run; FileName: "D:/Program Files/wamp/bin/php/php5.5.12/php-win.exe";Parameters: "switchPhpVersion.php 5.3.15";WorkingDir: "D:/Program Files/wamp/scripts"; Flags: waituntilterminated
Action: run; FileName: "D:/Program Files/wamp/bin/php/php5.5.12/php-win.exe";Parameters: "-c . refresh.php";WorkingDir: "D:/Program Files/wamp/scripts"; Flags: waituntilterminated
Action: run; FileName: "net"; Parameters: "start wampapache64"; ShowCmd: hidden; Flags: waituntilterminated
Action: resetservices
Action: readconfig;
5.選擇PHP運行環境
重新打開WAMPServer管理器,選擇想要運行的PHP版本環境。
溫馨提示:如果出現php切換沒有反應,建議把整個WAMPServer退出,在從新打開就ok了!
6.出現php與apache不匹配解決辦法
這個問題很可能是由於PHP是用V6編譯的,而apche是vc2012編譯的,只需要下載另一版本編譯的php即可解決。