我看到会话处理提到了%mdat
以及%udat
哈希。有什么区别,我何时以及为什么要使用%mdat
哈希?
答案 0 :(得分:3)
如Embperl POD中所述,
您可以将任何数据存储在
%mdat
哈希中,如果有任何请求来自同一个Embperl文档,您将再次在该哈希中看到相同的值。
此外,请注意上述POD中的“您将看到”措辞有些误导,这可能会导致您的混淆。
main Embperl documentation提供了更准确的答案,消除了混淆:
下次任何用户点击同一个Embperl页面时,Embperl会从
%mdat
填充Apache::Session
哈希,其值与您在上一个请求中存储的值相同页。
请注意我以粗体突出显示的文字 - 任何用户。典型的会话数据(存储在%udat
中)仅存储在特定用户 。
因此,%mdat
充当一种每个人的embperl页面,但与用户无关的数据存储。
要回答“何时”问题,在实践中使用%mdat
的示例将是每页访问计数器。