ello全部 即時通訊新的php和服務器腳本(來自java/cpp背景) 我的問題是,如果我喜歡能夠建立某種單音緩存,將持有我的數據在內存中的所有web應用程序 生活,當我啓動web服務器,它將啓動主緩存 ,將服務器web應用程序不會在會議內靜態緩存 像C++/java中的singletone映射,一直離開 我的選擇是什麼?如何在php中使用全局緩存?
0
A
回答
3
0
function resetCache(){
restoreCacheSession();
session_unset();
restoreTrueSession();
}
function restoreCacheSession(){
$sessionId = session_id();
if(strlen($sessionId)) {
$origSetting = ini_get('session.use_cookies');
session_write_close();
}
session_id('cache');
ini_set('session.use_cookies', false);
session_start();
if($sessionId)
{
$_SESSION["_trueSessionId"] = $sessionId;
$_SESSION["_trueSessionSettings"] = $origSetting;
}
}
function restoreTrueSession(){
if(isset($_SESSION["_trueSessionId"])){
$sessionId = $_SESSION["_trueSessionId"];
$origSetting = $_SESSION["_trueSessionId"];
}
session_write_close();
if(isset($sessionId)) {
ini_set('session.use_cookies', $origSetting);
session_id($sessionId);
session_start();
}
elseif(isset($_COOKIE['phpSESSID'])){
session_id($_COOKIE['phpSESSID']);
session_start();
}
else {
session_start();
session_unset();
session_regenerate_id();
}
}
function cache($var, $value = null){
restoreCacheSession();
if(!isset($value)){
if(isset($_SESSION[$var])){
$result = $_SESSION[$var];
}
restoreTrueSession();
return isset($result)?$result:null;
}
$_SESSION[$var] = $value;
restoreTrueSession();
}
要在緩存中設置一個變量,你只需要<?php cache("yourvarname",yourvarvalue) ?>
爲了獲得在緩存中變量的值:<?php cache("yourvarname") ?>
要重置緩存<?php resetCache("yourvarname") ?>
相關問題
- 1. 全局禁用緩存.NET
- 2. 使用全局緩存for openjpa 2
- 3. 使用全局變量緩存值
- 4. 全局禁用jboss中的EntityManager緩存
- 5. 在$ .get()中全局緩存爲false
- 6. 如何使全局內存緩存重放超過100%?
- 7. 在Javascript中使用全局變量作爲緩存很好嗎?
- 8. 在不使用全局變量的Javascript中進行緩存
- 9. python全局對象緩存
- 10. React jQuery AJAX全局緩存
- 11. 不能有全局緩存
- 12. jQuery全局選擇「緩存」
- 13. 如何在全局應用的浮油上創建緩存層?
- 14. 如何在REDIS緩存中添加全局變量
- 15. 如何在php中禁用緩存
- 16. c中的全局緩存機制#
- 17. 全局程序集緩存中的Microsoft.SqlServer.Types.dll?
- 18. 在php中使用超全局$ _GET類
- 19. 在php中存儲ONE全局值
- 20. 用於緩存權限的PHP全局時間戳
- 21. 在php中使用文件緩存安全嗎?
- 22. 如何在AutoMapper中全局使用Ignore?
- 23. 如何全局啓用SQL Server 2008 R2 Reporting Services數據緩存
- 24. Webistrano - 如何在部署後清除全局HTML緩存
- 25. C#中如何存在全局函數?
- 26. 使用PHP curl發送存儲在$ _COOKIE全局中的cookie
- 27. 如何安全地在Actor中使用ThreadLocal緩存?
- 28. 如何在PHP中使用全局變量Codeigniter
- 29. 如何在MVC項目的php類中使用全局變量
- 30. 如何使用PHP實現緩存GD