public function __construct($pdoOrDsn = null, array $options = array()) { parent::__construct($pdoOrDsn, $options); if (array_key_exists('gc_maxlifetime', $options)) { ini_set('session.gc_maxlifetime', $options['gc_maxlifetime']); } }
public function __construct($pdoOrDsn = null, array $options = array()) { parent::__construct($pdoOrDsn, $options); if ($pdoOrDsn instanceof \PDO) { if (\PDO::ERRMODE_EXCEPTION !== $pdoOrDsn->getAttribute(\PDO::ATTR_ERRMODE)) { throw new \InvalidArgumentException(sprintf('"%s" requires PDO error mode attribute be set to throw Exceptions (i.e. $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION))', __CLASS__)); } $this->_pdo = $pdoOrDsn; $this->_driver = $this->_pdo->getAttribute(\PDO::ATTR_DRIVER_NAME); } else { $this->_dsn = $pdoOrDsn; } $this->_table = isset($options['db_table']) ? $options['db_table'] : $this->_table; $this->_idCol = isset($options['db_id_col']) ? $options['db_id_col'] : $this->_idCol; $this->_dataCol = isset($options['db_data_col']) ? $options['db_data_col'] : $this->_dataCol; $this->_lifetimeCol = isset($options['db_lifetime_col']) ? $options['db_lifetime_col'] : $this->_lifetimeCol; $this->_timeCol = isset($options['db_time_col']) ? $options['db_time_col'] : $this->_timeCol; $this->_username = isset($options['db_username']) ? $options['db_username'] : $this->_username; $this->_password = isset($options['db_password']) ? $options['db_password'] : $this->_password; $this->_connectionOptions = isset($options['db_connection_options']) ? $options['db_connection_options'] : $this->_connectionOptions; $this->_lockMode = isset($options['lock_mode']) ? $options['lock_mode'] : $this->_lockMode; }