API Documentation

Zend/Cache/Core.php

Show: inherited
Table of Contents

Zend Framework

LICENSE

This source file is subject to the new BSD license that is bundled with this package in the file LICENSE.txt. It is also available through the world-wide-web at this URL: http://framework.zend.com/license/new-bsd If you did not receive a copy of the license and are unable to obtain it through the world-wide-web, please send an email to license@zend.com so we can send you a copy immediately.

Category
Zend  
Copyright
Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)  
License
New BSD License  
Package
Zend_Cache  
Version
$Id: Core.php 24594 2012-01-05 21:27:01Z matthew $  

\Zend_Cache_Core

Package: Zend\Cache

Children
\Zend_Cache_Frontend_Class
\Zend_Cache_Frontend_File
\Zend_Cache_Frontend_Capture
\Zend_Cache_Frontend_Page
\Zend_Cache_Frontend_Output
\Zend_Cache_Frontend_Function
Copyright
Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)  
License
New BSD License  

Constants

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

Messages

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

Properties

Propertyprotected\Zend_Cache_Backend_Interface  $_backend= 'null'

Backend Object

Default valuenullDetails
Type
\Zend_Cache_Backend_Interface
Propertyprotectedarray  $_backendCapabilities= 'array()'

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

Default valuearray()Details
Type
array
Propertyprotectedarray  $_directivesList= 'array('lifetime''
static

Array of options which have to be transfered to backend

Default valuearray('lifetime'Details
Type
array
Propertyprotectedboolean  $_extendedBackend= 'false'

True if the backend implements Zend_Cache_Backend_ExtendedInterface

Default valuefalseDetails
Type
boolean
Propertyprivatestring  $_lastId= 'null'

Last used cache id

Default valuenullDetails
Type
string
Propertyprotectedarray  $_options= 'array( 'write_control' => true'

Available options

available options

====> (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)

Default valuearray( 'write_control' => trueDetails
Type
array
Propertyprotectedarray  $_specificOptions= 'array()'

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

Default valuearray()Details
Type
array

Methods

methodpublic__construct( array|\Zend_Config $options = array() ) : void

Constructor

Parameters
Name Type Description
$options array|\Zend_Config

Associative array of options or Zend_Config instance

Throws
Exception Description
\Zend_Cache_Exception
methodprotected_id( string $id ) : string

Make and return a cache id

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

Parameters
Name Type Description
$id string

Cache id

Returns
Type Description
string Cache id (with or without prefix)
methodprotected_log( string $message,  $priority = 4 ) : void

Log a message at the WARN (4) priority.

Parameters
Name Type Description
$message string
$priority
Throws
Exception Description
\Zend_Cache_Exception
methodprotected_loggerSanity( ) : void

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

Create a default log object if none is set.

Throws
Exception Description
\Zend_Cache_Exception
methodprivate_setOption( string $name, mixed $value ) : void

Set an option

Parameters
Name Type Description
$name string

Name of the option

$value mixed

Value of the option

Throws
Exception Description
\Zend_Cache_Exception
methodprotected_validateIdOrTag( string $string ) : void
static

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

Throw an exception if a problem is found

Parameters
Name Type Description
$string string

Cache id or tag

Throws
Exception Description
\Zend_Cache_Exception
methodprotected_validateTagsArray( array $tags ) : void
static

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

Throw an exception if a problem is found

Parameters
Name Type Description
$tags array

Array of tags

Throws
Exception Description
\Zend_Cache_Exception
methodpublicclean( string $mode = 'all', array|string $tags = array() ) : boolean

Clean cache entries

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
Name Type Description
$mode string
$tags array|string
Returns
Type Description
boolean True if ok
Throws
Exception Description
\Zend_Cache_Exception
methodpublicgetBackend( ) : \Zend_Cache_Backend

Returns the backend

Returns
Type Description
\Zend_Cache_Backend backend object
methodpublicgetFillingPercentage( ) : int

Return the filling percentage of the backend storage

Returns
Type Description
int integer between 0 and 100
methodpublicgetIds( ) : array

Return an array of stored cache ids

Returns
Type Description
array array of stored cache ids (string)
methodpublicgetIdsMatchingAnyTags( array $tags = array() ) : array

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

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

Parameters
Name Type Description
$tags array

array of tags

Returns
Type Description
array array of matching any cache ids (string)
methodpublicgetIdsMatchingTags( array $tags = array() ) : array

Return an array of stored cache ids which match given tags

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

Parameters
Name Type Description
$tags array

array of tags

Returns
Type Description
array array of matching cache ids (string)
methodpublicgetIdsNotMatchingTags( array $tags = array() ) : array

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

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

Parameters
Name Type Description
$tags array

array of tags

Returns
Type Description
array array of not matching cache ids (string)
methodpublicgetMetadatas( string $id ) : array

Return an array of metadatas for the given cache id

The array will include these keys : - expire : the expire timestamp - tags : a string array of tags - mtime : timestamp of last modification time

Parameters
Name Type Description
$id string

cache id

Returns
Type Description
array array of metadatas (false if the cache id is not found)
methodpublicgetOption( string $name ) : mixed

Public frontend to get an option value

Parameters
Name Type Description
$name string

Name of the option

Returns
Type Description
mixed option value
Throws
Exception Description
\Zend_Cache_Exception
methodpublicgetTags( ) : array

Return an array of stored tags

Returns
Type Description
array array of stored tags (string)
methodpublicload( string $id, boolean $doNotTestCacheValidity = false, boolean $doNotUnserialize = false ) : mixed|false

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

Parameters
Name Type Description
$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
Type Description
mixed|false Cached datas
methodpublicremove( string $id ) : boolean

Remove a cache

Parameters
Name Type Description
$id string

Cache id to remove

Returns
Type Description
boolean True if ok
methodpublicsave( mixed $data, string $id = null, array $tags = array(), int $specificLifetime = false, int $priority = 8 ) : boolean

Save some data in a cache

Parameters
Name Type Description
$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 int

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

$priority int

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

Returns
Type Description
boolean True if no problem
Throws
Exception Description
\Zend_Cache_Exception
methodpublicsetBackend( \Zend_Cache_Backend $backendObject ) : void

Set the backend

Parameters
Name Type Description
$backendObject \Zend_Cache_Backend
Throws
Exception Description
\Zend_Cache_Exception
methodpublicsetConfig( \Zend_Config $config ) : \Zend_Cache_Core

Set options using an instance of type Zend_Config

Parameters
Name Type Description
$config \Zend_Config
Returns
Type Description
\Zend_Cache_Core
methodpublicsetLifetime( int $newLifetime ) : void

Force a new lifetime

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

Parameters
Name Type Description
$newLifetime int

New lifetime (in seconds)

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

Public frontend to set an option

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

Parameters
Name Type Description
$name string

Name of the option

$value mixed

Value of the option

Throws
Exception Description
\Zend_Cache_Exception
methodpublictest( string $id ) : int|false

Test if a cache is available for the given id

Parameters
Name Type Description
$id string

Cache id

Returns
Type Description
int|false Last modified time of cache entry if it is available, false otherwise
methodpublictouch( string $id, int $extraLifetime ) : boolean

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

Parameters
Name Type Description
$id string

cache id

$extraLifetime int
Returns
Type Description
boolean true if ok
Documentation was generated by DocBlox 0.15.1.