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.

array
$_options= 'array(
'cache_db_complete_path' => null'
Available options
Available options=====> (string) cache_db_complete_path : - the complete path (filename included) of the SQLITE database
====> (int) automatic_vacuum_factor : - Disable / Tune the automatic vacuum process - The automatic vacuum process defragment the database file (and make it smaller) when a clean() or delete() is called 0 => no automatic vacuum 1 => systematic vacuum (when delete() or clean() methods are called) x (integer) > 1 => automatic vacuum randomly 1 times on x clean() or delete()
array(
'cache_db_complete_path' => null
Details
___expire(
string $id
)
:
void
PUBLIC METHOD FOR UNIT TESTING ONLY !
Force a cache record to expire
Name | Type | Description |
---|---|---|
$id | string | Cache id |

__construct(
array $options
=
array()
)
:
void
Constructor
Name | Type | Description |
---|---|---|
$options | array | Associative array of options |
Exception | Description |
---|---|
\Zend_cache_Exception |

_checkAndBuildStructure(
)
:
boolean
Check if the database structure is ok (with the good version), if no : build it

_checkStructureVersion(
)
:
boolean
Check if the database structure is ok (with the good version)
Type | Description |
---|---|
boolean | True if ok |

_clean(
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)
Name | Type | Description |
---|---|---|
$mode | string | Clean mode |
$tags | array | Array of tags |
Type | Description |
---|---|
boolean | True if no problem |

_getConnection(
)
:
resource
Return the connection resource
If we are not connected, the connection is made
Type | Description |
---|---|
resource | Connection resource |
Exception | Description |
---|---|
\Zend_Cache_Exception |

_query(
string $query
)
:
mixed|false
Execute an SQL query silently
Name | Type | Description |
---|---|---|
$query | string | SQL query |
Type | Description |
---|---|
mixed|false | query results |

_registerTag(
string $id, string $tag
)
:
boolean
Register a cache id with the given tag
Name | Type | Description |
---|---|---|
$id | string | Cache id |
$tag | string | Tag |
Type | Description |
---|---|
boolean | True if no problem |

clean(
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)
Name | Type | Description |
---|---|---|
$mode | string | Clean mode |
$tags | array | Array of tags |
Type | Description |
---|---|
boolean | True if no problem |

getCapabilities(
)
:
array
Return an associative array of capabilities (booleans) of the backend
The array must include these keys : - automatic_cleaning (is automating cleaning necessary) - tags (are tags supported) - expired_read (is it possible to read expired cache records (for doNotTestCacheValidity option for example)) - priority does the backend deal with priority when saving - infinite_lifetime (is infinite lifetime can work with this backend) - get_list (is it possible to get the list of cache ids and the complete list of tags)
Type | Description |
---|---|
array | associative of with capabilities |

getFillingPercentage(
)
:
int
Return the filling percentage of the backend storage
Type | Description |
---|---|
int | integer between 0 and 100 |
Exception | Description |
---|---|
\Zend_Cache_Exception |

getIds(
)
:
array
Return an array of stored cache ids
Type | Description |
---|---|
array | array of stored cache ids (string) |

getIdsMatchingAnyTags(
array $tags
=
array()
)
:
array
Return an array of stored cache ids which match any given tags
In case of multiple tags, a logical AND is made between tags
Name | Type | Description |
---|---|---|
$tags | array | array of tags |
Type | Description |
---|---|
array | array of any matching cache ids (string) |

getIdsMatchingTags(
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
Name | Type | Description |
---|---|---|
$tags | array | array of tags |
Type | Description |
---|---|
array | array of matching cache ids (string) |

getIdsNotMatchingTags(
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
Name | Type | Description |
---|---|---|
$tags | array | array of tags |
Type | Description |
---|---|
array | array of not matching cache ids (string) |

getMetadatas(
string $id
)
:
array
Return an array of metadatas for the given cache id
The array must include these keys : - expire : the expire timestamp - tags : a string array of tags - mtime : timestamp of last modification time
Name | Type | Description |
---|---|---|
$id | string | cache id |
Type | Description |
---|---|
array | array of metadatas (false if the cache id is not found) |

getTags(
)
:
array
Return an array of stored tags
Type | Description |
---|---|
array | array of stored tags (string) |

load(
string $id, boolean $doNotTestCacheValidity
=
false
)
:
string|false
Test if a cache is available for the given id and (if yes) return it (false else)
Name | Type | Description |
---|---|---|
$id | string | Cache id |
$doNotTestCacheValidity | boolean | If set to true, the cache validity won't be tested |
Type | Description |
---|---|
string|false | Cached datas |

remove(
string $id
)
:
boolean
Remove a cache record
Name | Type | Description |
---|---|---|
$id | string | Cache id |
Type | Description |
---|---|
boolean | True if no problem |

save(
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)
Name | Type | Description |
---|---|---|
$data | string | Datas to cache |
$id | string | Cache id |
$tags | array | Array of strings, the cache record will be tagged by each string entry |
$specificLifetime | int | If != false, set a specific lifetime for this cache record (null => infinite lifetime) |
Type | Description |
---|---|
boolean | True if no problem |
Exception | Description |
---|---|
\Zend_Cache_Exception |

test(
string $id
)
:
mixed|false
Test if a cache is available or not (for the given id)
Name | Type | Description |
---|---|---|
$id | string | Cache id |
Type | Description |
---|---|
mixed|false | (a cache is not available) or "last modified" timestamp (int) of the available cache record |