Cache_Lite
Located in /pear/cache/Lite.php (line 29)
Cache_Lite
Class | Description |
---|---|
Cache_Lite_Output | This class extends Cache_Lite and uses output buffering to get the data to cache. |
Cache_Lite_File | This class extends Cache_Lite and offers a cache system driven by a master file |
Cache_Lite_Function | This class extends Cache_Lite and can be used to cache the result and output of functions/methods |
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.
- => no automatic cache cleaning
- => systematic cache cleaning
Enable / disable automatic serialization
it can be used to save directly datas which aren't strings (but it's slower)
Directory where to put the cache files (make sure to add a trailing slash)
Enable / disable caching
(can be very usefull for the debug of cached scripts)
API break for error handling in CACHE_LITE_ERROR_RETURN mode
In CACHE_LITE_ERROR_RETURN mode, error handling was not good because for example save() method always returned a boolean (a PEAR_Error object would be better in CACHE_LITE_ERROR_RETURN mode). To correct this without breaking the API, this option (false by default) can change this handling.
File name (with path)
Enable / disable fileLocking
(can avoid cache corruption under bad circumstances)
File name (without path)
File Name protection
if set to true, you can use any cache id or group name if set to false, it can be faster but cache ids and group names will be used directly in cache file names so be carefull with special characters...
Current cache group
Nested directory level
Set the hashed directory structure level. 0 means "no hashed directory structure", 1 means "one level of directory", 2 means "two levels"... This option can speed up Cache_Lite only when you have many thousands of cache file. Only specific benchs can help you to choose the perfect value for you. Maybe, 1 or 2 is a good start.
Umask for hashed directory structure
Current cache id
Enable / Disable "Memory Caching"
NB : There is no lifetime for memory caching !
Memory caching array
Memory caching counter
Memory caching limit
Enable / Disable "Only Memory Caching" (be carefull, memory caching is "beta quality")
Pear error mode (when raiseError is called)
(see PEAR doc)
Enable / disable read control
If enabled, a control key is embeded in cache file and this key is compared with the one calculated after the reading.
Type of read control (only if read control is enabled)
Available values are : 'md5' for a md5 hash control (best but slowest) 'crc32' for a crc32 hash control (lightly less safe but faster, better choice) 'strlen' for a length only test (fastest)
Timestamp of the last valid cache
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
Constructor
$options is an assoc. Available options are : $options = array( 'cacheDir' => directory where to put the cache files (string), 'caching' => enable / disable caching (boolean), 'lifeTime' => cache lifetime in seconds (int), 'fileLocking' => enable / disable fileLocking (boolean), 'writeControl' => enable / disable write control (boolean), 'readControl' => enable / disable read control (boolean), 'readControlType' => type of read control 'crc32', 'md5', 'strlen' (string), 'pearErrorMode' => pear error mode (when raiseError is called) (cf PEAR doc) (int), 'memoryCaching' => enable / disable memory caching (boolean), 'onlyMemoryCaching' => enable / disable only memory caching (boolean), 'memoryCachingLimit' => max nbr of records to store into memory caching (int), 'fileNameProtection' => enable / disable automatic file name protection (boolean), 'automaticSerialization' => enable / disable automatic serialization (boolean), 'automaticCleaningFactor' => distable / tune automatic cleaning process (int), 'hashedDirectoryLevel' => level of the hashed directory system (int), 'hashedDirectoryUmask' => umask for hashed directory structure (int), 'errorHandlingAPIBreak' => API break for better error handling ? (boolean) );
- array $options: options
Clean the cache
if no group is specified all cache files will be destroyed else only cache files of the specified group will be destroyed
- string $group: name of the cache group
- string $mode: flush cache mode : 'old', 'ingroup', 'notingroup', 'callback_myFunction'
Extend the life of a valid cache file
see http://pear.php.net/bugs/bug.php?id=6681
Test if a cache is available and (if yes) return it
- string $id: cache id
- string $group: name of the cache group
- boolean $doNotTestCacheValidity: if set to true, the cache validity won't be tested
- Cache_Lite_File::get() : Test if a cache is available and (if yes) return it
Load the state of the caching memory array from a given cache file cache
- string $id: cache id
- string $group: name of the cache group
- boolean $doNotTestCacheValidity: if set to true, the cache validity won't be tested
Return the cache last modification time
BE CAREFUL : THIS METHOD IS FOR HACKING ONLY !
Trigger a PEAR error
To improve performances, the PEAR.php file is included dynamically. The file is so included only when an error is triggered. So, in most cases, the file isn't included and perfs are much better.
- string $msg: error message
- int $code: error code
Remove a cache file
- string $id: cache id
- string $group: name of the cache group
Save some data in a cache file
- string $data: data to put in cache (can be another type than strings if automaticSerialization is on)
- string $id: cache id
- string $group: name of the cache group
Save the state of the caching memory array into a cache file cache
- string $id: cache id
- string $group: name of the cache group
Set a new life time
- int $newLifeTime: new life time (in seconds)
Generic way to set a Cache_Lite option
see Cache_Lite constructor for available options
- $name
- $value
Set to debug mode
When an error is found, the script will stop and the message will be displayed (in debug mode only).
Documentation generated on Mon, 05 Mar 2007 21:09:50 +0000 by phpDocumentor 1.3.1