本文整理汇总了PHP中JSession::addValidator方法的典型用法代码示例。如果您正苦于以下问题:PHP JSession::addValidator方法的具体用法?PHP JSession::addValidator怎么用?PHP JSession::addValidator使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类JSession
的用法示例。
在下文中一共展示了JSession::addValidator方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: register
/**
* Registers the service provider with a DI container.
*
* @param Container $container The DI container.
*
* @return void
*
* @since 4.0
*/
public function register(Container $container)
{
$container->alias('session', 'Joomla\\Session\\SessionInterface')->alias('JSession', 'Joomla\\Session\\SessionInterface')->alias('Joomla\\Session\\Session', 'Joomla\\Session\\SessionInterface')->share('Joomla\\Session\\SessionInterface', function (Container $container) {
$app = JFactory::getApplication();
// Generate a session name.
$name = JApplicationHelper::getHash($app->get('session_name', get_class($app)));
// Calculate the session lifetime.
$lifetime = $app->get('lifetime') ? $app->get('lifetime') * 60 : 900;
// Initialize the options for the Session object.
$options = array('name' => $name, 'expire' => $lifetime);
// Set up the storage handler
$handler = new FilesystemHandler(JPATH_INSTALLATION . '/sessions');
$input = $app->input;
$storage = new JoomlaStorage($input, $handler);
$dispatcher = $container->get('Joomla\\Event\\DispatcherInterface');
$dispatcher->addListener('onAfterSessionStart', array($app, 'afterSessionStart'));
$session = new JSession($storage, $dispatcher, $options);
$session->addValidator(new AddressValidator($input, $session));
$session->addValidator(new ForwardedValidator($input, $session));
return $session;
}, true);
}