嗨有無論如何存儲變量內存,直到服務器重新啓動或手動重新使用PHP相同的變量。PHP內存類或變量
其實問題是這樣的我在我的應用程序中有一個路由器,它有幾個配置來路由不同API上的URL。我不想在每次請求登陸時加載我的配置,因此我正在尋找一種方法將配置數據保存到內存中,直到我手動重新創建配置數據爲止。
請建議是否有這樣做。
感謝高級。
嗨有無論如何存儲變量內存,直到服務器重新啓動或手動重新使用PHP相同的變量。PHP內存類或變量
其實問題是這樣的我在我的應用程序中有一個路由器,它有幾個配置來路由不同API上的URL。我不想在每次請求登陸時加載我的配置,因此我正在尋找一種方法將配置數據保存到內存中,直到我手動重新創建配置數據爲止。
請建議是否有這樣做。
感謝高級。
PHP將所有變量存儲在內存中,直到進程退出(如果變量是全局變量)或直到範圍結束(如果變量是本地變量)。
我想你會感到困惑的是Apache(或者你正在使用的任何網絡服務器)不斷運行,但它只是爲每個請求啓動PHP,所以PHP永遠不會連續運行。
要跨不同的請求存儲事物,您需要使用外部持久性。您可以使用PHP會話,數據庫,平面文件等來完成此操作,但這些操作都不會將數據存儲在內存中。
儘管它是外部的,但您可以使用緩存服務器(如memcached)將數據連續存儲在內存中,然後使用PHP通過Memcached
類訪問它。
嗨drrcknlsn和馬特, 感謝您的關注,所以我只有在這種情況下的緩存解決方案。再次感謝。 –
另外,您的服務器可能有一個磁盤緩存,可以將其放入內存中經常請求的文件中。因此,雖然您將文件保存到磁盤,但是從內存讀取的次數比從磁盤讀取的次數要多。 –
@CarlosCampderrós:+1用於磁盤緩存提醒。另外,大多數RDMS都有可以使用的內存表,這是我忘記提及的。 – FtDRbwLXw6
我認爲您需要更好地解釋您嘗試解決的問題,您嘗試過的方法,有效的方法,哪些方法無效以及您遇到了哪些問題。把它寫成好像你在寫需求規格說明一樣。 – Matt
嗨馬特,我想知道是否有這樣做,我曾嘗試建立一個同樣的單身人士班,但不幸的是,它是完全不同於我的要求。請建議,如果有反正在PHP中實現這一點。謝謝 –
我不明白「this」是什麼。 – Matt