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

Interface SessionStorageInterface

StorageInterface.

Direct known implementers

Symfony\Component\HttpFoundation\Session\Storage\MockArraySessionStorage, Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage

Indirect known implementers

Ratchet\Session\Storage\VirtualSessionStorage, Symfony\Component\HttpFoundation\Session\Storage\MockFileSessionStorage, Symfony\Component\HttpFoundation\Session\Storage\PhpBridgeSessionStorage
Namespace: Symfony\Component\HttpFoundation\Session\Storage
Author: Fabien Potencier <fabien@symfony.com>
Author: Drak <drak@zikula.org>
Located at Storage/SessionStorageInterface.php
Methods summary
public boolean
# start( )

Starts the session.

Starts the session.

Returns

boolean
True if started

Throws

RuntimeException
If something goes wrong starting the session.
public boolean
# isStarted( )

Checks if the session is started.

Checks if the session is started.

Returns

boolean
True if started, false otherwise
public string
# getId( )

Returns the session ID.

Returns the session ID.

Returns

string
The session ID or empty
public
# setId( string $id )

Sets the session ID.

Sets the session ID.

Parameters

$id
string
$id
public mixed
# getName( )

Returns the session name.

Returns the session name.

Returns

mixed
The session name
public
# setName( string $name )

Sets the session name.

Sets the session name.

Parameters

$name
string
$name
public boolean
# regenerate( boolean $destroy = false, integer $lifetime = null )

Regenerates id that represents this storage.

Regenerates id that represents this storage.

This method must invoke session_regenerate_id($destroy) unless this interface is used for a storage object designed for unit or functional testing where a real PHP session would interfere with testing.

Note regenerate+destroy should not clear the session data in memory only delete the session data from persistent storage.

Care: When regenerating the session ID no locking is involved in PHP's session design. See https://bugs.php.net/bug.php?id=61470 for a discussion. So you must make sure the regenerated session is saved BEFORE sending the headers with the new ID. Symfony's HttpKernel offers a listener for this. See Symfony\Component\HttpKernel\EventListener\SaveSessionListener. Otherwise session data could get lost again for concurrent requests with the new ID. One result could be that you get logged out after just logging in.

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
public
# save( )

Force the session to be saved and closed.

Force the session to be saved and closed.

This method must invoke session_write_close() unless this interface is used for a storage object design for unit or functional testing where a real PHP session would interfere with testing, in which case it should actually persist the session data if required.

Throws

RuntimeException
If the session is saved without being started, or if the session is already closed.
public
# clear( )

Clear all session data in memory.

Clear all session data in memory.

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
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
public Symfony\Component\HttpFoundation\Session\Storage\MetadataBag
# getMetadataBag( )

Returns

Symfony\Component\HttpFoundation\Session\Storage\MetadataBag
Ratchet API documentation generated by ApiGen 2.8.0