PHP靜態變量持續多久?


Answers

在命令行中有一個定義的開始和結束。

在服務器上運行的PHP沒有區別。 當對腳本發出Web請求時,腳本會一直運行直到腳本結束,或者直到崩潰或超時(可能還有其他類似的問題)。

AJAX不運行服務器端。 AJAX是另一個客戶端異步調用服務器資源。 對於第一個請求所做的所有事情,只要認證,驗證,輸入檢查等都必須在每個後續請求中完成。 AJAX響應的區別在於PHP腳本可能返回請求的內容

一個程序唯一的一次“堅持”就是如果它被告知繼續前進。 PHP可以被告知等待,並通過網絡套接字執行操作,但這似乎超出了你的問題的範圍。

Question

PHP靜態變量持續多久,即“PHP運行”持續多久? 說一個命令行程序有一個定義的開始和結束,但在Web W / AJAX我不知道如何定義這個。

以下是我見過的一個PHP腳本啟動的3種方式。

  1. 用戶(請求一個PHP頁面)
  2. Javacript調用PHP(AJAX)
  3. PHP通過header()調用更多的PHP

在我的實際應用程序中,我通過AJAX調用了一個php腳本,該腳本使用header()來重新加載該站點。 這將被認為是兩個不同的運行。 每個都有自己的靜態變量,不相關。




當您退出時,PHP腳本停止,到達腳本的末尾或失敗。




所有三個都是一樣的。

在每種情況下,用戶的瀏覽器正在對url進行http請求。 運行時間是從服務器收到請求的時間到滿滿的時間。