package Zend_Cache
subpackage Zend_Cache_Frontend
copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
license New BSD License
inherited_from \Zend_Cache_Core

 Methods

Constructor

__construct(array $options = array()) : void
inherited_from \Zend_Cache_Core::__construct()

Parameters

$options

array

Associative array of options

Exceptions

\Zend_Cache_Exception

Constructor

__construct(array|\Zend_Config $options = array()) : void
Inherited

Parameters

$options

array\Zend_Config

Associative array of options or Zend_Config instance

Exceptions

\Zend_Cache_Exception

Clean cache entries

clean(string $mode = 'all', array|string $tags = array()) : boolean
Inherited

Available modes are : 'all' (default) => remove all cache entries ($tags is not used) 'old' => remove too old cache entries ($tags is not used) 'matchingTag' => remove cache entries matching all given tags ($tags can be an array of strings or a single string) 'notMatchingTag' => remove cache entries not matching one of the given tags ($tags can be an array of strings or a single string) 'matchingAnyTag' => remove cache entries matching any given tags ($tags can be an array of strings or a single string)

Parameters

$mode

string

$tags

arraystring

Exceptions

\Zend_Cache_Exception

Returns

booleanTrue if ok

Returns the backend

getBackend() : \Zend_Cache_Backend
Inherited

Returns

\Zend_Cache_Backendbackend object

Return the filling percentage of the backend storage

getFillingPercentage() : integer
Inherited

Returns

integerinteger between 0 and 100

Return an array of stored cache ids

getIds() : array
Inherited

Returns

arrayarray of stored cache ids (string)

Return an array of stored cache ids which match any given tags

getIdsMatchingAnyTags(array $tags = array()) : array
Inherited

In case of multiple tags, a logical OR is made between tags

Parameters

$tags

array

array of tags

Returns

arrayarray of matching any cache ids (string)

Return an array of stored cache ids which match given tags

getIdsMatchingTags(array $tags = array()) : array
Inherited

In case of multiple tags, a logical AND is made between tags

Parameters

$tags

array

array of tags

Returns

arrayarray of matching cache ids (string)

Return an array of stored cache ids which don't match given tags

getIdsNotMatchingTags(array $tags = array()) : array
Inherited

In case of multiple tags, a logical OR is made between tags

Parameters

$tags

array

array of tags

Returns

arrayarray of not matching cache ids (string)

Return an array of metadatas for the given cache id

getMetadatas(string $id) : array
Inherited

The array will include these keys :

  • expire : the expire timestamp
  • tags : a string array of tags
  • mtime : timestamp of last modification time

Parameters

$id

string

cache id

Returns

arrayarray of metadatas (false if the cache id is not found)

Public frontend to get an option value

getOption(string $name) : mixed
Inherited

Parameters

$name

string

Name of the option

Exceptions

\Zend_Cache_Exception

Returns

mixedoption value

Return an array of stored tags

getTags() : array
Inherited

Returns

arrayarray of stored tags (string)

Test if a cache is available for the given id and (if yes) return it (false else)

load(string $id, boolean $doNotTestCacheValidity = false, boolean $doNotUnserialize = false) : mixed | false
inherited_from \Zend_Cache_Core::load()

Parameters

$id

string

Cache id

$doNotTestCacheValidity

boolean

If set to true, the cache validity won't be tested

$doNotUnserialize

boolean

Do not serialize (even if automatic_serialization is true) => for internal use

Returns

mixedfalseCached datas

Test if a cache is available for the given id and (if yes) return it (false else)

load(string $id, boolean $doNotTestCacheValidity = false, boolean $doNotUnserialize = false) : mixed | false
Inherited

Parameters

$id

string

Cache id

$doNotTestCacheValidity

boolean

If set to true, the cache validity won't be tested

$doNotUnserialize

boolean

Do not serialize (even if automatic_serialization is true) => for internal use

Returns

mixedfalseCached datas

Remove a cache

remove(string $id) : boolean
Inherited

Parameters

$id

string

Cache id to remove

Returns

booleanTrue if ok

Save some data in a cache

save(mixed $data, string $id = null, array $tags = array(), integer $specificLifetime = false, integer $priority = 8) : boolean
Inherited

Parameters

$data

mixed

Data to put in cache (can be another type than string if automatic_serialization is on)

$id

string

Cache id (if not set, the last cache id will be used)

$tags

array

Cache tags

$specificLifetime

integer

If != false, set a specific lifetime for this cache record (null => infinite lifetime)

$priority

integer

integer between 0 (very low priority) and 10 (maximum priority) used by some particular backends

Exceptions

\Zend_Cache_Exception

Returns

booleanTrue if no problem

Set the backend

setBackend(\Zend_Cache_Backend $backendObject) : void
Inherited

Parameters

$backendObject

\Zend_Cache_Backend

Exceptions

\Zend_Cache_Exception

Set options using an instance of type Zend_Config

setConfig(\Zend_Config $config) : \Zend_Cache_Core
Inherited

Parameters

$config

\Zend_Config

Returns

\Zend_Cache_Core

Force a new lifetime

setLifetime(integer $newLifetime) : void
Inherited

The new value is set for the core/frontend but for the backend too (directive)

Parameters

$newLifetime

integer

New lifetime (in seconds)

Change the master_file option

setMasterFile(string $masterFile) 

To keep the compatibility

deprecated

Parameters

$masterFile

string

the complete path and name of the master file

Change the master_files option

setMasterFiles(array $masterFiles) 

Parameters

$masterFiles

array

the complete paths and name of the master files

Public frontend to set an option

setOption(string $name, mixed $value) : void

Just a wrapper to get a specific behaviour for master_file

inherited_from \Zend_Cache_Core::setOption()

Parameters

$name

string

Name of the option

$value

mixed

Value of the option

Exceptions

\Zend_Cache_Exception

Public frontend to set an option

setOption(string $name, mixed $value) : void
Inherited

There is an additional validation (relatively to the protected _setOption method)

Parameters

$name

string

Name of the option

$value

mixed

Value of the option

Exceptions

\Zend_Cache_Exception

Test if a cache is available for the given id

test(string $id) : integer | false
inherited_from \Zend_Cache_Core::test()

Parameters

$id

string

Cache id

Returns

integerfalseLast modified time of cache entry if it is available, false otherwise

Test if a cache is available for the given id

test(string $id) : integer | false
Inherited

Parameters

$id

string

Cache id

Returns

integerfalseLast modified time of cache entry if it is available, false otherwise

Give (if possible) an extra lifetime to the given cache id

touch(string $id, integer $extraLifetime) : boolean
Inherited

Parameters

$id

string

cache id

$extraLifetime

integer

Returns

booleantrue if ok

Make and return a cache id

_id(string $id) : string
Inherited

Checks 'cache_id_prefix' and returns new id with prefix or simply the id if null

Parameters

$id

string

Cache id

Returns

stringCache id (with or without prefix)

Log a message at the WARN (4) priority.

_log(string $message, $priority = 4) : void
Inherited

Parameters

$message

string

$priority

Exceptions

\Zend_Cache_Exception

Make sure if we enable logging that the Zend_Log class is available.

_loggerSanity() : void
Inherited

Create a default log object if none is set.

Exceptions

\Zend_Cache_Exception

Validate a cache id or a tag (security, reliable filenames, reserved prefixes.

_validateIdOrTag(string $string) : void
Inherited

..)

Throw an exception if a problem is found

Parameters

$string

string

Cache id or tag

Exceptions

\Zend_Cache_Exception

Validate a tags array (security, reliable filenames, reserved prefixes.

_validateTagsArray(array $tags) : void
Inherited

..)

Throw an exception if a problem is found

Parameters

$tags

array

Array of tags

Exceptions

\Zend_Cache_Exception

Set an option

_setOption(string $name, mixed $value) : void
Inherited

Parameters

$name

string

Name of the option

$value

mixed

Value of the option

Exceptions

\Zend_Cache_Exception

 Properties

 

Backend Object

$_backend : \Zend_Cache_Backend_Interface

Default

null
 

Array of capabilities of the backend (only if it implements Zend_Cache_Backend_ExtendedInterface)

$_backendCapabilities : array

Default

array()
 

Array of options which have to be transfered to backend

$_directivesList : array

Default

array('lifetime', 'logging', 'logger')
Static
 

True if the backend implements Zend_Cache_Backend_ExtendedInterface

$_extendedBackend : boolean

Default

false
 

Available options

$_options : array

Default

array('write_control' => true, 'caching' => true, 'cache_id_prefix' => null, 'automatic_serialization' => false, 'automatic_cleaning_factor' => 10, 'lifetime' => 3600, 'logging' => false, 'logger' => null, 'ignore_user_abort' => false)

====> (boolean) write_control :

  • Enable / disable write control (the cache is read just after writing to detect corrupt entries)
  • Enable write control will lightly slow the cache writing but not the cache reading Write control can detect some corrupt cache files but maybe it's not a perfect control

====> (boolean) caching :

  • Enable / disable caching (can be very useful for the debug of cached scripts)

=====> (string) cache_id_prefix :

  • prefix for cache ids (namespace)

====> (boolean) automatic_serialization :

  • Enable / disable automatic serialization
  • It can be used to save directly datas which aren't strings (but it's slower)

====> (int) automatic_cleaning_factor :

  • Disable / Tune the automatic cleaning process
  • The automatic cleaning process destroy too old (for the given life time) cache files when a new cache file is written : 0 => no automatic cache cleaning 1 => systematic cache cleaning x (integer) > 1 => automatic cleaning randomly 1 times on x cache write

====> (int) lifetime :

  • Cache lifetime (in seconds)
  • If null, the cache is valid forever.

====> (boolean) logging :

  • If set to true, logging is activated (but the system is slower)

====> (boolean) ignore_user_abort

  • If set to true, the core will set the ignore_user_abort PHP flag inside the save() method to avoid cache corruptions in some cases (default false)
 

Available options

$_specificOptions : array

Default

array('master_file' => null, 'master_files' => null, 'master_files_mode' => 'OR', 'ignore_missing_master_files' => false)

====> (string) master_file :

  • a complete path of the master file
  • deprecated (see master_files)

====> (array) master_files :

  • an array of complete path of master files
  • this option has to be set !

====> (string) master_files_mode :

  • Zend_Cache_Frontend_File::MODE_AND or Zend_Cache_Frontend_File::MODE_OR
  • if MODE_AND, then all master files have to be touched to get a cache invalidation
  • if MODE_OR (default), then a single touched master file is enough to get a cache invalidation

====> (boolean) ignore_missing_master_files

  • if set to true, missing master files are ignored silently
  • if set to false (default), an exception is thrown if there is a missing master file
inherited_from \Zend_Cache_Core::_specificOptions
 

Not used for the core, just a sort a hint to get a common setOption() method (for the core and for frontends)

$_specificOptions : array

Default

array()
 

Last used cache id

$_lastId : string

Default

null
 

Master file mtimes

$_masterFile_mtimes : array

Default

null

Array of int

 Constants

 

BACKEND_NOT_IMPLEMENTS_EXTENDED_IF

BACKEND_NOT_IMPLEMENTS_EXTENDED_IF = 'Current backend doesn\'t implement the Zend_Cache_Backend_ExtendedInterface, so this method is not available' 
 

Messages

BACKEND_NOT_SUPPORTS_TAG = 'tags are not supported by the current backend' 
 

Consts for master_files_mode

MODE_AND = 'AND' 
 

MODE_OR

MODE_OR = 'OR'