Cache/Backend/Static.php

Show: PublicProtectedPrivateinherited
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-2014 Zend Technologies USA Inc. (http://www.zend.com)  
License
New BSD License  
Package
Zend_Cache  
Subpackage
Zend_Cache_Backend  
Version
$Id$  

\Zend_Cache_Backend_Static

Package: Zend_Cache\Zend_Cache_Backend
Implements
Parent(s)
\Zend_Cache_Backend
Copyright
Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)  
License
New BSD License  

Constants

>VConstant  INNER_CACHE_NAME = 'zend_cache_backend_static_tagcache'

Properties

>VPropertyprotectedarray $_options = array('public_dir' => null, 'sub_dir' => 'html', 'file_extension' => '.html', 'index_filename' => 'index', 'file_locking' => true, 'cache_file_perm' => 384, 'cache_directory_perm' => 448, 'debug_header' => false, 'tag_cache' => null, 'disable_caching' => false)
Static backend options
Default valuearray('public_dir' => null, 'sub_dir' => 'html', 'file_extension' => '.html', 'index_filename' => 'index', 'file_locking' => true, 'cache_file_perm' => 384, 'cache_directory_perm' => 448, 'debug_header' => false, 'tag_cache' => null, 'disable_caching' => false)Details
Type
array
>VPropertyprotected\Zend_Cache_Core $_tagCache = null
Cache for handling tags
Default valuenullDetails
Type
\Zend_Cache_Core
>VPropertyprotectedarray $_tagged = null
Tagged items
Default valuenullDetails
Type
array

Methods

methodprotected_createDirectoriesFor( $path) : void

Recursively create the directories needed to write the static file

Parameters
NameTypeDescription
$path
methodprotected_decodeId(string $id) : string

Decode a request URI from the provided ID

Parameters
NameTypeDescription
$idstring
Returns
TypeDescription
string
methodprotected_detectId() : string

Determine the page to save from the request

Returns
TypeDescription
string
methodprotected_isSerialized( $data) : void

Detect serialization of data (cannot predict since this is the only way to obey the interface yet pass in another parameter).

In future, ZF 2.0, check if we can just avoid the interface restraints. This format is the only valid one possible for the class, so it's simple to just run a regular expression for the starting serialized format.
Parameters
NameTypeDescription
$data
methodprotected_octdec(string $val) : int

Detect an octal string and return its octal value for file permission ops otherwise return the non-string (assumed octal or decimal int already)

Parameters
NameTypeDescription
$valstring

The potential octal in need of conversion

Returns
TypeDescription
int
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
NameTypeDescription
$stringstring

Cache id or tag

Throws
ExceptionDescription
\Zend_Cache_Exception
Details
Deprecated
Not usable until perhaps ZF 2.0  
methodprotected_verifyPath(string $path) : bool

Verify path exists and is non-empty

Parameters
NameTypeDescription
$pathstring
Returns
TypeDescription
bool
methodpublicclean(string $mode = \Zend_Cache::CLEANING_MODE_ALL, array $tags = array()) : boolean

Clean some cache records

Available modes are : Zend_Cache::CLEANING_MODE_ALL (default) => remove all cache entries ($tags is not used) Zend_Cache::CLEANING_MODE_OLD => remove too old cache entries ($tags is not used) Zend_Cache::CLEANING_MODE_MATCHING_TAG => remove cache entries matching all given tags ($tags can be an array of strings or a single string) Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG => remove cache entries not {matching one of the given tags} ($tags can be an array of strings or a single string) Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG => remove cache entries matching any given tags ($tags can be an array of strings or a single string)
Parameters
NameTypeDescription
$modestring

Clean mode

$tagsarray

Array of tags

Returns
TypeDescription
booleantrue if no problem
methodpublicgetInnerCache() : \Zend_Cache_Core

Get the Inner Cache if set

Returns
TypeDescription
\Zend_Cache_Core
methodpublicgetOption(string $name) : mixed

Retrieve any option via interception of the parent's statically held options including the local option for a tag cache.

Parameters
NameTypeDescription
$namestring
Returns
TypeDescription
mixed
methodpublicload(string $id, boolean $doNotTestCacheValidity = false) : string | false

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

Note : return value is always "string" (unserialization is done by the core not by the backend)
Parameters
NameTypeDescription
$idstring

Cache id

$doNotTestCacheValidityboolean

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

Returns
TypeDescription
string | falsecached datas
methodpublicremove(string $id) : boolean

Remove a cache record

Parameters
NameTypeDescription
$idstring

Cache id

Returns
TypeDescription
booleanTrue if no problem
methodpublicremoveRecursively(string $id) : boolean

Remove a cache record recursively for the given directory matching a REQUEST_URI based relative path (deletes the actual file matching this in addition to the matching directory)

Parameters
NameTypeDescription
$idstring

Cache id

Returns
TypeDescription
booleanTrue if no problem
methodpublicsave(string $data, string $id, array $tags = array(), int $specificLifetime = false) : boolean

Save some string datas into a cache record

Note : $data is always "string" (serialization is done by the core not by the backend)
Parameters
NameTypeDescription
$datastring

Datas to cache

$idstring

Cache id

$tagsarray

Array of strings, the cache record will be tagged by each string entry

$specificLifetimeint

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

Returns
TypeDescription
booleantrue if no problem
methodpublicsetInnerCache( $cache) : void

Set an Inner Cache, used here primarily to store Tags associated with caches created by this backend. Note: If Tags are lost, the cache should be completely cleaned as the mapping of tags to caches will have been irrevocably lost.

Parameters
NameTypeDescription
$cache
methodpublicsetOption(string $name, mixed $value) : \Zend_Cache_Backend_Static

Interceptor child method to handle the case where an Inner Cache object is being set since it's not supported by the standard backend interface

Parameters
NameTypeDescription
$namestring
$valuemixed
Returns
TypeDescription
\Zend_Cache_Backend_Static
methodpublictest(string $id) : bool

Test if a cache is available or not (for the given id)

Parameters
NameTypeDescription
$idstring

cache id

Returns
TypeDescription
bool
Documentation was generated by phpDocumentor 2.2.0 .