在我們安裝php模組時,有時需要注意php編譯的版本,下面講解下php中vc6、vc9、ts、nts版本的區別與用法詳解,介紹php的兩種執行方式。
1. vc6與vc9的區別:
vc6版本是使用visual studio 6編譯器編譯的,如果你的php是用apache來架設的,那你就選擇vc6版本。
vc9版本是使用visual studio 2008編譯器編譯的,如果你的php是用iis來架設的,那你就選擇 vc9版本。
vc9版本是針對iis伺服器的版本,沒有對apache的支援,而vc6版本對iis和apache都提供了支援
2.ts與nts的區別:
windows版的php從版本5.2.1開始有thread safe和nonethread safe之分。
先從字面意思上理解,thread safe是執行緒安全,執行時會進行執行緒(thread)安全檢查,以防止有新要求就啟動新執行緒的cgi執行方式而耗盡系統資源。non thread safe是非執行緒安全,在執行時不進行執行緒(thread)安全檢查。
3.php的兩種執行方式:isapi和fastcgi。
isapi執行方式是以dll動態庫的形式使用,可以在被使用者請求後執行,在處理完乙個使用者請求後不會馬上消失,所以需要進行執行緒安全檢查,這樣來提高程式的執行效率,所以如果是以isapi來執行php,建議選擇threadsafe版本;
而fastcgi執行方式是以單一執行緒來執行操作,所以不需要進行執行緒的安全檢查,除去執行緒安全檢查的防護反而可以提高執行效率,所以,如果是以fastcgi來執行php,建議選擇nonthread safe版本。通過phpinfo(); 檢視其中的 thread safety 項,這個專案就是檢視是否是執行緒安全,如果是:enabled,一般來說應該是ts版,否則是nts版。
在我們安裝php模組時,有時需要注意php編譯的版本,下面講解下php中vc6、vc9、ts、nts版本的區別與用法詳解,介紹php的兩種執行方式。
1. vc6與vc9的區別:
vc6版本是使用visual studio 6編譯器編譯的,如果你的php是用apache來架設的,那你就選擇vc6版本。
vc9版本是使用visual studio 2008編譯器編譯的,如果你的php是用iis來架設的,那你就選擇 vc9版本。
vc9版本是針對iis伺服器的版本,沒有對apache的支援,而vc6版本對iis和apache都提供了支援
2.ts與nts的區別:
windows版的php從版本5.2.1開始有thread safe和nonethread safe之分。
先從字面意思上理解,thread safe是執行緒安全,執行時會進行執行緒(thread)安全檢查,以防止有新要求就啟動新執行緒的cgi執行方式而耗盡系統資源。non thread safe是非執行緒安全,在執行時不進行執行緒(thread)安全檢查。
3.php的兩種執行方式:isapi和fastcgi。
isapi執行方式是以dll動態庫的形式使用,可以在被使用者請求後執行,在處理完乙個使用者請求後不會馬上消失,所以需要進行執行緒安全檢查,這樣來提高程式的執行效率,所以如果是以isapi來執行php,建議選擇threadsafe版本;
而fastcgi執行方式是以單一執行緒來執行操作,所以不需要進行執行緒的安全檢查,除去執行緒安全檢查的防護反而可以提高執行效率,所以,如果是以fastcgi來執行php,建議選擇nonthread safe版本。通過phpinfo(); 檢視其中的 thread safety 項,這個專案就是檢視是否是執行緒安全,如果是:enabled,一般來說應該是ts版,否則是nts版。
php靜態方法與非靜態方法用法區別詳解
靜態方法和非靜態方法的區別總結如下 1 靜態方法屬於類所有,類例項化前即可使用。也就是不需要new乙個物件就可以使用該物件的方法。比如object fun1 這樣的格式 2 非靜態方法可以訪問類中的任何成員,靜態方法只能訪問類中的靜態成員 3 因為靜態方法在類例項化前就可以使用,而類中的非靜態變數必...
DFS與BFS的區別 用法 詳解?
寫在最前的三點 1 所謂圖的遍歷就是按照某種次序訪問圖的每一頂點 一次僅且一次。2 實現bfs和dfs都需要解決的乙個問題就是如何儲存圖。一般有兩種方法 鄰接矩陣和鄰接表。這裡為簡單起 見,均採用鄰接矩陣儲存,說白了也就是二維陣列。3 本文章的小測試部分的測試例項是下圖 一 深度優先搜尋遍歷 1 從...
PHP 命名空間原理與用法詳解
命名空間適用於 php 5 5.3.0,php 7 php 命名空間類似於檔案系統,雖然任意合法的php 都可以包含在命名空間中,但只有以下型別的 受命名空間的影響,它們是 命名空間通過關鍵字 namespace 來宣告。如果乙個檔案中包含命名空間,它必須在其它所有 之前宣告命名空間,除了乙個以外 ...