会话代理的例子
编辑该页面警告:你浏览的文档欧宝官网下载appob娱乐下载Symfony 2.1,不再维护。
读这个页面的更新版本Symfob娱乐下载ony 6.2(当前的稳定版本)。
会话代理的例子
会话代理机制有多种用途,这个例子演示了两个共同使用。而不是注入会话处理程序正常,处理程序注入到代理和注册的会话存储驱动程序:
1 2 3 4 5 6
使用ob娱乐下载\组件\HttpFoundation\会话\会话;使用ob娱乐下载\组件\HttpFoundation\会话\存储\NativeSessionStorage;使用ob娱乐下载\组件\HttpFoundation\会话\存储\处理程序\PdoSessionStorage;美元代理=新YourProxy (新PdoSessionStorage ());美元会话=新会话(新NativeSessionStorage (美元代理));
下面,您将了解可以用于两个真实的例子YourProxy
:加密的会话数据和只读的客人。
加密的会话数据
如果你想加密的会话数据,您可以使用代理来加密和解密会话的要求:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17日18 19 20 21日22日23日24日25日26日27
使用ob娱乐下载\组件\HttpFoundation\会话\存储\代理\SessionHandlerProxy;类EncryptedSessionProxy扩展SessionHandlerProxy{私人美元关键;公共函数__construct(\ SessionHandlerInterface美元处理程序,美元关键){美元这- >关键=美元关键;父::__construct (美元处理程序);}公共函数读(美元id){美元数据=父::写(美元id,美元数据);返回mcrypt_decrypt (\ MCRYPT_3DES,美元这- >键,美元数据);}公共函数写(美元id,美元数据){美元数据= mcrypt_encrypt (\ MCRYPT_3DES美元这- >键,美元数据);返回父::写(美元id,美元数据);}}
只读的客人会议
在一些应用程序中,客人需要一个会话的用户,但没有特别需要保存会话。在这种情况下,你可以截获会话之前,写道:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21日22日23日
使用喷火\用户;使用ob娱乐下载\组件\HttpFoundation\会话\存储\代理\SessionHandlerProxy;类ReadOnlyGuestSessionProxy扩展SessionHandlerProxy{私人美元用户;公共函数__construct(\ SessionHandlerInterface美元处理程序、用户美元用户){美元这- >用户=美元用户;父::__construct (美元处理程序);}公共函数写(美元id,美元数据){如果(美元这- >用户- >isGuest ()) {返回;}返回父::写(美元id,美元数据);}}
这项工作,包括代码示例,许可下Creative Commons冲锋队3.0许可证。