Overview

Namespaces

  • Evenement
  • None
  • PHP
  • Psr
    • Http
      • Message
  • Ratchet
    • Http
    • RFC6455
      • Handshake
      • Messaging
    • Server
    • Session
      • Serialize
      • Storage
        • Proxy
    • Wamp
    • WebSocket
  • React
    • EventLoop
      • Tick
      • Timer
    • Socket
    • Stream
  • Symfony
    • Component
      • HttpFoundation
        • Session
          • Attribute
          • Flash
          • Storage
            • Handler
            • Proxy
      • Routing
        • Annotation
        • Exception
        • Generator
          • Dumper
        • Loader
          • DependencyInjection
        • Matcher
          • Dumper
        • Tests
          • Annotation
          • Fixtures
            • AnnotatedClasses
            • OtherAnnotatedClasses
          • Generator
            • Dumper
          • Loader
          • Matcher
            • Dumper

Classes

  • MetadataBag
  • MockArraySessionStorage
  • MockFileSessionStorage
  • NativeSessionStorage
  • PhpBridgeSessionStorage

Interfaces

  • SessionStorageInterface
  • Overview
  • Namespace
  • Class
  • Tree

Class NativeSessionStorage

This provides a base class for session attribute storage.

Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage implements Symfony\Component\HttpFoundation\Session\Storage\SessionStorageInterface

Direct known subclasses

Ratchet\Session\Storage\VirtualSessionStorage, Symfony\Component\HttpFoundation\Session\Storage\PhpBridgeSessionStorage
Namespace: Symfony\Component\HttpFoundation\Session\Storage
Author: Drak <drak@zikula.org>
Located at Storage/NativeSessionStorage.php
Methods summary
public
# __construct( array $options = array(), Symfony\Component\HttpFoundation\Session\Storage\Proxy\AbstractProxy|Symfony\Component\HttpFoundation\Session\Storage\Handler\NativeSessionHandler|SessionHandlerInterface|null $handler = null, Symfony\Component\HttpFoundation\Session\Storage\MetadataBag $metaBag = null )

Constructor.

Constructor.

Depending on how you want the storage driver to behave you probably want to override this constructor entirely.

List of options for $options array with their defaults.

Parameters

$options
array
$options Session configuration options
$handler
Symfony\Component\HttpFoundation\Session\Storage\Proxy\AbstractProxy|Symfony\Component\HttpFoundation\Session\Storage\Handler\NativeSessionHandler|SessionHandlerInterface|null
$handler
$metaBag
Symfony\Component\HttpFoundation\Session\Storage\MetadataBag
$metaBag MetadataBag

See

http://php.net/session.configuration for options but we omit 'session.' from the beginning of the keys for convenience. ("auto_start", is not supported as it tells PHP to start a session before PHP starts to execute user-land code. Setting during runtime has no effect). cache_limiter, "" (use "0" to prevent headers from being sent entirely). cookie_domain, "" cookie_httponly, "" cookie_lifetime, "0" cookie_path, "/" cookie_secure, "" entropy_file, "" entropy_length, "0" gc_divisor, "100" gc_maxlifetime, "1440" gc_probability, "1" hash_bits_per_character, "4" hash_function, "0" name, "PHPSESSID" referer_check, "" serialize_handler, "php" use_strict_mode, "0" use_cookies, "1" use_only_cookies, "1" use_trans_sid, "0" upload_progress.enabled, "1" upload_progress.cleanup, "1" upload_progress.prefix, "upload_progress_" upload_progress.name, "PHP_SESSION_UPLOAD_PROGRESS" upload_progress.freq, "1%" upload_progress.min-freq, "1" url_rewriter.tags, "a=href, area=href, frame=src, form=, fieldset=" sid_length, "32" sid_bits_per_character, "5" trans_sid_hosts, $_SERVER['HTTP_HOST'] trans_sid_tags, "a=href, area=href, frame=src, form="
public Symfony\Component\HttpFoundation\Session\Storage\Proxy\AbstractProxy
# getSaveHandler( )

Gets the save handler instance.

Gets the save handler instance.

Returns

Symfony\Component\HttpFoundation\Session\Storage\Proxy\AbstractProxy
public boolean
# start( )

Starts the session.

Starts the session.

Returns

boolean
True if started

Throws

RuntimeException
If something goes wrong starting the session.

Implementation of

Symfony\Component\HttpFoundation\Session\Storage\SessionStorageInterface::start()
public string
# getId( )

Returns the session ID.

Returns the session ID.

Returns

string
The session ID or empty

Implementation of

Symfony\Component\HttpFoundation\Session\Storage\SessionStorageInterface::getId()
public
# setId( string $id )

Sets the session ID.

Sets the session ID.

Parameters

$id
string
$id

Implementation of

Symfony\Component\HttpFoundation\Session\Storage\SessionStorageInterface::setId()
public mixed
# getName( )

Returns the session name.

Returns the session name.

Returns

mixed
The session name

Implementation of

Symfony\Component\HttpFoundation\Session\Storage\SessionStorageInterface::getName()
public
# setName( string $name )

Sets the session name.

Sets the session name.

Parameters

$name
string
$name

Implementation of

Symfony\Component\HttpFoundation\Session\Storage\SessionStorageInterface::setName()
public boolean
# regenerate( boolean $destroy = false, integer $lifetime = null )

Regenerates id that represents this storage.

Regenerates id that represents this storage.

Parameters

$destroy
boolean
$destroy Destroy session when regenerating?
$lifetime
integer
$lifetime Sets the cookie lifetime for the session cookie. A null value will leave the system settings unchanged, 0 sets the cookie to expire with browser session. Time is in seconds, and is not a Unix timestamp.

Returns

boolean
True if session regenerated, false if error

Throws

RuntimeException
If an error occurs while regenerating this storage

Implementation of

Symfony\Component\HttpFoundation\Session\Storage\SessionStorageInterface::regenerate()
public
# save( )

Force the session to be saved and closed.

Force the session to be saved and closed.

Throws

RuntimeException
If the session is saved without being started, or if the session is already closed.

Implementation of

Symfony\Component\HttpFoundation\Session\Storage\SessionStorageInterface::save()
public
# clear( )

Clear all session data in memory.

Clear all session data in memory.

Implementation of

Symfony\Component\HttpFoundation\Session\Storage\SessionStorageInterface::clear()
public
# registerBag( Symfony\Component\HttpFoundation\Session\SessionBagInterface $bag )

Registers a SessionBagInterface for use.

Registers a SessionBagInterface for use.

Parameters

$bag
Symfony\Component\HttpFoundation\Session\SessionBagInterface
$bag

Implementation of

Symfony\Component\HttpFoundation\Session\Storage\SessionStorageInterface::registerBag()
public Symfony\Component\HttpFoundation\Session\SessionBagInterface
# getBag( string $name )

Gets a SessionBagInterface by name.

Gets a SessionBagInterface by name.

Parameters

$name
string
$name

Returns

Symfony\Component\HttpFoundation\Session\SessionBagInterface

Throws

InvalidArgumentException
If the bag does not exist

Implementation of

Symfony\Component\HttpFoundation\Session\Storage\SessionStorageInterface::getBag()
public
# setMetadataBag( Symfony\Component\HttpFoundation\Session\Storage\MetadataBag $metaBag = null )

Sets the MetadataBag.

Sets the MetadataBag.

Parameters

$metaBag
Symfony\Component\HttpFoundation\Session\Storage\MetadataBag
$metaBag
public Symfony\Component\HttpFoundation\Session\Storage\MetadataBag
# getMetadataBag( )

Gets the MetadataBag.

Gets the MetadataBag.

Returns

Symfony\Component\HttpFoundation\Session\Storage\MetadataBag

Implementation of

Symfony\Component\HttpFoundation\Session\Storage\SessionStorageInterface::getMetadataBag()
public boolean
# isStarted( )

Checks if the session is started.

Checks if the session is started.

Returns

boolean
True if started, false otherwise

Implementation of

Symfony\Component\HttpFoundation\Session\Storage\SessionStorageInterface::isStarted()
public
# setOptions( array $options )

Sets session.* ini variables.

Sets session.* ini variables.

For convenience we omit 'session.' from the beginning of the keys. Explicitly ignores other ini keys.

Parameters

$options
array
$options Session ini directives array(key => value)

See

http://php.net/session.configuration
public
# setSaveHandler( Symfony\Component\HttpFoundation\Session\Storage\Proxy\AbstractProxy|Symfony\Component\HttpFoundation\Session\Storage\Handler\NativeSessionHandler|SessionHandlerInterface|null $saveHandler = null )

Registers session save handler as a PHP session handler.

Registers session save handler as a PHP session handler.

To use internal PHP session save handlers, override this method using ini_set with session.save_handler and session.save_path e.g.
ini_set('session.save_handler', 'files'); ini_set('session.save_path', '/tmp');

or pass in a NativeSessionHandler instance which configures session.save_handler in the constructor, for a template see NativeFileSessionHandler or use handlers in composer package drak/native-session

Parameters

$saveHandler
Symfony\Component\HttpFoundation\Session\Storage\Proxy\AbstractProxy|Symfony\Component\HttpFoundation\Session\Storage\Handler\NativeSessionHandler|SessionHandlerInterface|null
$saveHandler

Throws

InvalidArgumentException

See

http://php.net/session-set-save-handler
http://php.net/sessionhandlerinterface
http://php.net/sessionhandler
http://github.com/drak/NativeSession
protected
# loadSession( array & $session = null )

Load the session with attributes.

Load the session with attributes.

After starting the session, PHP retrieves the session from whatever handlers are set to (either PHP's internal, or a custom save handler set with session_set_save_handler()). PHP takes the return value from the read() handler, unserializes it and populates $_SESSION with the result automatically.

Parameters

$session
array|null
$session
Properties summary
protected Symfony\Component\HttpFoundation\Session\SessionBagInterface[] $bags
#

Array of SessionBagInterface.

Array of SessionBagInterface.

protected boolean $started false
#
protected boolean $closed false
#
protected Symfony\Component\HttpFoundation\Session\Storage\Proxy\AbstractProxy $saveHandler
#
protected Symfony\Component\HttpFoundation\Session\Storage\MetadataBag $metadataBag
#
Ratchet API documentation generated by ApiGen 2.8.0