c# outputcache 在 php 中等效?

标签 c# php asp.net caching

我正在尝试找出如何为使用 php 的站点缓存“聊天”,并且传递的变量需要每个变量具有唯一的版本。即:id 1 的聊天缓存不应与 id2 相同,因为 id1 不需要查看 id2 的私有(private)消息。

在 C# 中,您可以使用类似于:

<%@ OutputCache Duration="4" VaryByParam="param1;param3" %>

这会将页面缓存 4 秒,如果缓存页面的 param1 和 param3 不同,将缓存唯一副本。

php里有这种东西吗?

最佳答案

PHP 没有内置输出缓存之类的东西;您将不得不编写自己的实现(这对于您正在谈论的内容来说并不难)或使用现有的实现。我相信 Smarty 模板引擎内置了类似的东西,但如果你没有很多麻烦地实现类似的东西可能为时已晚。

如果您打算编写自己的实现,我会考虑使用 memcached 来缓存您的数据;那么您可以为缓存的 HTML 创建这样的键:

$cachekey = "chat_param1:". $参数1。 '-param3:' 。 $参数3);

这样您就可以为 param1 和 param3 的每个可能值创建一个唯一的键。

关于c# outputcache 在 php 中等效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6628061/

相关文章:

c# - SqlCommand.ExecuteReader() 在死锁时不会抛出 SqlException

c# - 当表的数据源动态变化时更新 Xamarin iOS 中的 UITableView

php - Codeigniter do_upload() 在 "success"上静默失败

php - 与 phpseclib 连接给出 sftp 错误 111

asp.net - 在没有特定需要的情况下在 ASP.Net 页面上使用 Async ="true"可能出现的问题

c# - ASP.NET c# 在每次单击按钮时按天数增加日期值

asp.net - 解码/解析 UPDATE sql 语句

c# - 在接口(interface)中实现委托(delegate)

c# - 在添加自己的 LinearLayout 期间无法激活 JNI 句柄 - Xamarin Android

php - 如何使这个表格工作