# Zend_Application_Resource_Session

`Zend_Application_Resource_Session` le permite configurar `Zend_Session` y opcionalmente inicializar una sesión SaveHandler.

Para establecer un manejador de sesiones, simplemente pasar al recurso la clave opcional saveHandler (case insensible). El valor de esta opción puede ser uno de los siguientes:

- String: un string indicando una clase implementando `Zend_Session_SaveHandler_Interface` que debería ser instanciada.

- Array: un array con las claves "class" y, opcionalmente, "options", indicando la clase que implementa `Zend_Session_SaveHandler_Interface` que debería ser instanciada y una variedad de opciones para proporcionar a su constructor.

- `Zend_Session_SaveHandler_Interface`: un objeto implementando esta interfaz.

Pasando cualquier otra opción de claves será pasado a `Zend_Session::setOptions()` para configurar `Zend_Session`.

## Configuración de recursos de la Sesión Ejemplo

A continuación el snippet INI nos muestra cómo configurar el recurso para sesiones. Se establecen varias opciones `Zend_Session`, como también configura una instancia `Zend_Session_SaveHandler_DbTable`.

    resources.session.save_path = APPLICATION_PATH "/../data/session"
    resources.session.use_only_cookies = true
    resources.session.remember_me_seconds = 864000
    resources.session.saveHandler.class = "Zend_Session_SaveHandler_DbTable"
    resources.session.saveHandler.options.name = "session"
    resources.session.saveHandler.options.primary.session_id = "session_id"
    resources.session.saveHandler.options.primary.save_path = "save_path"
    resources.session.saveHandler.options.primary.name = "name"
    resources.session.saveHandler.options.primaryAssignment.sessionId = "sessionId"
    resources.session.saveHandler.options.primaryAssignment.sessionSavePath = "sessionSavePath"
    resources.session.saveHandler.options.primaryAssignment.sessionName = "sessionName"
    resources.session.saveHandler.options.modifiedColumn = "modified"
    resources.session.saveHandler.options.dataColumn = "session_data"
    resources.session.saveHandler.options.lifetimeColumn = "lifetime"

## Bootstrap your database first!

If you are configuring the `Zend_Session_SaveHandler_DbTable` session save handler, you must first configure your database connection for it to work. Do this by either using the Db resource -- and make sure the "resources.db" key comes prior to the "resources.session" key -- or by writing your own resource that initializes the database, and specifically sets the default `Zend_Db_Table` adapter.