我一直在分析 joomla 会话,遇到了一些问题。问题之一是会话名称。
请参阅此代码:(seesion.php#894)
protected function _setOptions(array $options)
{
// Set name
if (isset($options['name']))
{
session_name(md5($options['name']));
}
// Set id
if (isset($options['id']))
{
session_id($options['id']);
}
// Set expire time
if (isset($options['expire']))
{
$this->_expire = $options['expire'];
}
// Get security options
if (isset($options['security']))
{
$this->_security = explode(',', $options['security']);
}
if (isset($options['force_ssl']))
{
$this->_force_ssl = (bool) $options['force_ssl'];
}
// Sync the session maxlifetime
ini_set('session.gc_maxlifetime', $this->_expire);
return true;
}
我的问题是 $options 数组,我将其添加到脚本中:
print_r($options);
结果是:数组([name] => 266e79f0eac297f66eaf7926636f03fa [expire] => 900)
这个元素是从哪里来的?我的意思是有一个值可以让我这样做:
md5('value');
并获得相同的 [name] 元素