我看到会话处理提到了一个%mdat
以及%udat
哈希。有什么区别,何时以及为什么要使用%mdat
哈希?
问问题
144 次
1 回答
3
如Embperl POD中所述,
您可以将任何数据存储在
%mdat
散列中,如果任何请求来自同一个 Embperl 文档,您将再次在该散列中看到相同的值。
另外,请注意,上面 POD 中的“您将看到”的措辞有些误导,这可能导致您感到困惑。
主要的Embperl 文档提供了一个更精确的答案来消除混淆:
下一次任何用户点击相同的 Embperl 页面时,Emperl 会使用与您在对该页面的上一次请求中存储的相同值填充
%mdat
哈希值。Apache::Session
请注意我以粗体突出显示的文本 -任何用户。典型的会话数据(存储在 中%udat
)仅为特定用户存储和访问。
因此,%mdat
它充当一种每个单独的embperl页面但与用户无关的数据存储。
为了回答您的“何时”问题,在实践中使用的一个示例是%mdat
每页访问计数器。
于 2011-01-10T21:16:39.370 回答