PHP 版本講解

Web開發者發表於2011-12-30

PHP版本目前主要有分三支:PHP4/PHP5/PHP6
PHP4由於太古老、對OO支援不力已基本被淘汰,不用考慮PHP4。
PHP6由於基本沒有生產線上的應用,還基本只是一款概念產品,很多功能已在PHP5.3上實現,所以暫不考慮PHP6。

PHP5的版本目前主要分三支:PHP5.2之前的版本、PHP5.2.x 和 PHP5.3.x
PHP5.2之前的版本不值得考慮,因為某些功能缺陷或者BUG。
主流PHP程式對PHP5.2.x的相容性最好,而每次版本號的升級帶來的都是安全性和穩定性的改善,所以宜挑選最新的版本。目前PHP5.2系列最新的是PHP5.2.17。
而如果產品是自己開發自己使用,PHP5.3在某些方面更具優勢,在穩定性上更勝一籌,增加了很多PHP5.2所不具有的功能,比如內建php-fpm、更完善的垃圾回收演算法、名稱空間的引入、sqlite3的支援等等,是部署專案值得考慮的版本。目前PHP5.3系列最新的是PHP5.3.8。

面向windows的php有以下幾個版本
windows版本下載地址:http://windows.php.net/download/
Installer:可執行的MSI格式安裝包。
Zip:解壓即可用。和install版無區別。建議選擇Zip版。
Debug Pack:帶除錯的php包。

VC6與VC9是什麼?
VC6就是legacy Visual Studio 6 compiler,就是使用這個編譯器編譯的。
VC9 就是 the Visual Studio 2008 compiler,就是用微軟的VS編輯器編譯的。
那我們如何選擇下載哪個版本的PHP呢?
如果你是在windows下使用Apache+PHP的,請選擇VC6版本。
如果你是在windows下使用IIS+PHP 的,請選擇VC9版本。
提示:使用VC9版的時候需要有VC++2008的執行時環境(x86)(x64)
提示:不要在apache下使用VC9的版本。
提示:php5.2官方只提供vc6的下載。
提示:php5.3官方提供了vc6和vc9的下載,但從php5.3.5之後只提供vc9版的下載。php5.3.5是最後一個帶vc6版的。

TS和NTS是什麼?
TS 指 Thread Safe,即執行緒安全,一般在IIS以ISAPI方式載入的時候選擇這個版本。
NTS 指 Non Thread Safe,即非執行緒安全,一般在IIS以FastCGI方式執行的時候選擇這個版本,具有更好的效能。
提示:從PHP 5.3.0 開始釋出的Windows版已經不支援ISAPI模式了,下載的php壓縮包中沒有php5isapi.dll,所以推薦FastCGI方式執行PHP。

如何檢視當前執行的PHP的版本?
一個很簡單的辦法就是phpinfo();
Thread Safety disabled是NTS,enabled是TS
Configure Command看到VC98字樣的是VC6,Compiler標明 MSVC9 (Visual C++ 2008) 的是VC9

相關文件:PHP的執行緒安全與非執行緒安全版本的區別

相關文章