class PdoCache extends AbstractCache implements PruneableInterface

Traits

PdoTrait
LoggerAwareTrait

Methods

hasItem($key)

{@inheritdoc}

clear()

{@inheritdoc}

deleteItem($key)

{@inheritdoc}

deleteItems(array $keys)

{@inheritdoc}

bool
enableVersioning(bool $enable = true)

Enables/disables versioning of items.

reset()

{@inheritdoc}

static 
handleUnserializeCallback($class)

No description

get($key, $default = null)

{@inheritdoc}

set($key, $value, $ttl = null)

{@inheritdoc}

getMultiple($keys, $default = null)

{@inheritdoc}

setMultiple($values, $ttl = null)

{@inheritdoc}

deleteMultiple($keys)

{@inheritdoc}

__construct($connOrDsn, string $namespace = '', int $defaultLifetime, array $options = array(), MarshallerInterface $marshaller = null)

You can either pass an existing database connection as PDO instance or a Doctrine DBAL Connection or a DSN string that will be used to lazy-connect to the database when the cache is actually used.

Details

in AbstractTrait at line line 86
hasItem($key)

{@inheritdoc}

Parameters

$key

in AbstractTrait at line line 106
clear()

{@inheritdoc}

in AbstractTrait at line line 141
deleteItem($key)

{@inheritdoc}

Parameters

$key

in AbstractTrait at line line 149
deleteItems(array $keys)

{@inheritdoc}

Parameters

array $keys

in AbstractTrait at line line 195
bool enableVersioning(bool $enable = true)

Enables/disables versioning of items.

When versioning is enabled, clearing the cache is atomic and doesn't require listing existing keys to proceed, but old keys may need garbage collection and extra round-trips to the back-end are required.

Calling this method also clears the memoized namespace version and thus forces a resynchonization of it.

Parameters

bool $enable

Return Value

bool the previous state of versioning

in AbstractTrait at line line 208
reset()

{@inheritdoc}

in AbstractTrait at line line 282
static handleUnserializeCallback($class)

Parameters

$class

in AbstractCache at line line 46
get($key, $default = null)

{@inheritdoc}

Parameters

$key
$default

in AbstractCache at line line 64
set($key, $value, $ttl = null)

{@inheritdoc}

Parameters

$key
$value
$ttl

in AbstractCache at line line 74
getMultiple($keys, $default = null)

{@inheritdoc}

Parameters

$keys
$default

in AbstractCache at line line 100
setMultiple($values, $ttl = null)

{@inheritdoc}

Parameters

$values
$ttl

in AbstractCache at line line 136
deleteMultiple($keys)

{@inheritdoc}

Parameters

$keys

at line line 48
__construct($connOrDsn, string $namespace = '', int $defaultLifetime, array $options = array(), MarshallerInterface $marshaller = null)

You can either pass an existing database connection as PDO instance or a Doctrine DBAL Connection or a DSN string that will be used to lazy-connect to the database when the cache is actually used.

When a Doctrine DBAL Connection is passed, the cache table is created automatically when possible. Otherwise, use the createTable() method.

List of available options: * dbtable: The name of the table [default: cacheitems] * dbidcol: The column where to store the cache id [default: itemid] * dbdatacol: The column where to store the cache data [default: itemdata] * dblifetimecol: The column where to store the lifetime [default: itemlifetime] * dbtimecol: The column where to store the timestamp [default: itemtime] * dbusername: The username when lazy-connect [default: ''] * dbpassword: The password when lazy-connect [default: ''] * dbconnectionoptions: An array of driver-specific connection options [default: array()]

Parameters

$connOrDsn
string $namespace
int $defaultLifetime
array $options
MarshallerInterface $marshaller

Exceptions

InvalidArgumentException When first argument is not PDO nor Connection nor string
InvalidArgumentException When PDO error mode is not PDO::ERRMODE_EXCEPTION
InvalidArgumentException When namespace contains invalid characters