PVCache is a system for caching data and retrieving cached data.
The default system uses a file cache for caching data. But the system through the adapter pattern is extendable to use any caching system attached to the application.
Example:
//Init The Cache
PVCache::init();
$data = array('Apples', 'Oranges', 'Bananas');
//Check if cache has expired
if(PVCache::hasExpired('mycache')):
//Store The Cache
PVCache::writeCache('mycache', $data);
endif;
$data = PVCache::readCache('mycache');
print_r($data);
package |
util |
---|
__callStatic(string $method, mixed $args = array()) : mixed
access |
public |
---|
string
The key/name assigned to the method when added
mixed
Arguements to pass to the annoymous function. The function is called using call_user_func_array.
mixed
$value The value returned is the value the stored function returns
_applyFilter(string $class, string $method, mixed $data, array $options = array()) : mixed
access |
protected |
---|
string
The name of the class the filter is in
string
The method the filter is in
mixed
The data that is being passed to the filter
array
options to be passed to the filter. Passed options we be passed to the function. -'default_return' mixed: If no filter is return, the data passed in by default will be return. Can be overriden -'event' string: An event to associate with the filter. Default is null
mixed
$data The data the function returns
_callAdapter(string $class, string $method) : mixed
access |
protected |
---|
string
The name of the class the adapter is in
string
THe name of the method the class is being called from.
mixed
$value A value that the adapter returns
_hasAdapter( $class, string $method) : \boolea
access |
protected |
---|
string
The associated method
\boolea
$hasAdapter Returns true if it has an adapter or false if it doesn not
_hasFilter(string $class, string $method)
string
The class the filter is in
string
The method of the class that the filter is in
_invokeMethod(string $class, string $method, array $args) : mixed
access |
protected |
---|
string
The name of the class to be called
string
The name of the method in the class to be called
array
An array of arguements. Arguements have to be embedded in an array to be called.
mixed
$data Data returned by the function called
_invokeStaticMethod(string $class, string $method, array $args) : mixed
access |
protected |
---|
string
The name of the class to be called
string
The name of the method in the class to be called
array
An array of arguements. Arguements have to be embedded in an array to be called.
mixed
$data Data returned by the function called
_logAdapter(array $data) : void
access |
private |
---|
array
The data in the adapter
_logFilter(array $data) : void
access |
private |
---|
array
The data in the filter
_logObserver(array $data) : void
access |
private |
---|
array
The data in the observer
_notify(string $event) : void
access |
protected |
---|
string
The name of the even that occured that will trigger notifies
_prepareLogData(array $data) : string
access |
private |
---|
array
string
$message JSON encode message of information about the data
addAdapter(string $trigger_class, string $trigger_method, string $call_class, array $options = array()) : void
access |
public |
---|---|
todo |
add ability to adapt singleton class |
string
The class that contains the function the adapter will respond too
string
The method called that will have the adapter to be called.
string
The new class to be called that has the same method name
array
An array of options that be called -'object' string : Assumes that default method in the class to be called is static. If called object needs to be instantiated, change to object to 'instance' and one will be created before the adapter calls the function -'call_method' string: By default the method to be called to override the current one should be the same name. But this can be ovveridden to call a different method. -'type' string: The type of method being called. Default is class_method but if the method is a closure, set the type to be 'closure' and make the $trigger_method the closure
addClassAdapter(mixed $trigger_class, string $call_class, array $options = array()) : void
access |
public |
---|---|
todo |
Add ability to use singleton classes |
mixed
This can either be the name of the class or an object whose methods will be adapted to another class. The class should be included or be autoloaded by this point.
string
The call class is the classes methods that will be called in place of the methods in the trigger_class. These class does not have to be included as this point.
array
Options that be used to further distinguish the behavior of the adapters added -'object' string: Determines if the object being adapted to is static or an instance.Default is static -'call_class' string: The name of the class that the methods will be adapted too. -'class' string: The name of the whose methods will be adapted to another class
addFilter(string $class, string $method, string $filter_class, string $filter_method, array $options = array()) : void
access |
public |
---|
string
The name of the class the filter is going in
string
The name of the method the filter is in
string
The class that the filter resides in.
string
The method in the class that the parameters will be passed too.
array
Options that can be set for further modifying the filter. -'object' string: If the method being called is static, static should be inserted. If its in an instance, 'instance' should be set. Default is set to static. -'event' string: Associate this filter with an event. -'type' string: The type of function being called. Default is class_method but if the function is a closure, set the type to be 'closure' and make the $filter_method the closure
addMethod(string $method, \function $closure) : void
access |
public |
---|
string
The key/value that will be used to call the function
\function
The anonymous function/closure to be added
addObserver(string $event, string $class, string $method, array $options = array()) : void
access |
public |
---|
string
The name of the event that will cause a certain class and method to fire
string
The name of the class that contains the function that will be fired for this event
string
The name of the method that will be fired when the event occurs
array
Options to further the define the firing of an event -'object' string : If the method being called is static, should be set to static. Else set to instance -'class' stinrg : The name of the class to be called. Default is the class that is passed in. -'method' string: The name of the method to be called. Default is the method that is passed in. -'type' string: The type of function being called. Default is class_method but if the function is a closure, set the type to be 'closure' and make the $method the closure
addToCollection(mixed $data) : void
access |
public |
---|
mixed
Any data type( Object, Array, int, etc) to add to the public data collection
addToCollectionWithName(string $name, mixed $data) : void
access |
public |
---|---|
todo |
check the relevance of get and set |
string
The key/index to assign the value to
mixed
Data to be stored in the collection
clearFilters(string $class, string $method) : void
access |
public |
---|
string
The class the filter is in
string
The method of the class that the filter is in
clearObservers(string $event) : void
access |
public |
---|
string
The event to remove all the observers from
deleteCache(string $key, array $options = array()) : void
access |
public |
---|
string
The key to search for the cache by
array
Options that define how the cache data is deleted -'cache_location' string: The location the cached is saved
get(string $index) : mixed
access |
public |
---|
string
The index to retrieve a value from
mixed
$data The data that was stored at that index
getExpiration(string $key, array $options = array()) : string
access |
public |
---|
string
The key to search for the cache by
array
Options that define how the cache date is be found -'cache_format' string: The date/time format used when caching -'cache_format_search' string: The preg_match to use when searching for the cache date/time -'enclosing_tags' array: Tags that will encase the cached tag -'cache_location' string: The location the cached is saved -'cache_name' string: The name to assign to the cache when both writing and reading it
string
$expired Returns the date to expire, in string format
getInstance() : object
access |
public |
---|---|
object
$instance Returns the instance of a class.
getIterator() : \PVIterator
getMemcacheObject() : object
access |
pulbic |
---|---|
object
$memcache The memcache object
hasExpired(string $key, array $options = array()) : boolean
access |
public |
---|
string
The key to search for the cache by
array
Options that define how the cache is be found -'cache_format' string: The date/time format used when caching -'cache_format_search' string: The preg_match to use when searching for the cache date/time -'enclosing_tags' array: Tags that will encase the cached tag -'cache_location' string: The location the cached is saved -'cache_name' string: The name to assign to the cache when both writing and reading it
boolean
$expired Returns true if expired, otherwise false
init(array $config = array()) : void
access |
public |
---|
array
An array of configuration options. Options will be the defaults for other options. -'cache_format' string: The date/time format used when caching -'cache_format_search' string: The preg_match to use when searching for the cache date/time -'enclosing_tags' array: Tags that will encase the files to be caches -'cache_location' string: The location the cached is saved -'cache_name' string: The name to assign to the cache when both writing and reading it -'cache_expire' int: Ovveride the default expiration time by setting your own
readCache(string $key, array $options = array()) : string
access |
public |
---|
string
The key to be used to access the cached file
array
Options that define how the files are cached -'cache_format' string: The date/time format used when caching -'cache_format_search' string: The preg_match to use when searching for the cache date/time -'enclosing_tags' array: Tags that will encase the files to be caches -'cache_location' string: The location the cached is saved -'cache_name' string: The name to assign to the cache when both writing and reading it -'cache_expire' int: Ovveride the default expiration time by setting your own
string
$content The cached content
readMemcache(string $key, array $options = array()) : mixed
access |
public |
---|
string
The key that is assoicated with the file
array
Options that are used when defining memcache -'flag' int: The flag used when reading from the memcache object
mixed
$content Content returned from the memcache object
removeAdapter( $class, string $method) : void
access |
public |
---|
string
The associated method
removeClassAdapter( $class) : void
access |
public |
---|
removeMemcache(string $key, array $options = array()) : void
access |
public |
---|
string
The key that is assoicated with the file
array
Options that are used when deleting a file -'flush' boolean: Default is false, if set to true will delete all files in cache
set(string $index, mixed $value) : void
access |
public |
---|
string
The key or index to store the value at
mixed
A mixed value that can be anytype
setAdapterTrace(boolean $trace = false) : void
access |
public |
---|
boolean
Default is false. If set to true, will trace adatper.
setFilterTrace(boolean $trace = false) : void
access |
public |
---|
boolean
Default is false. If set to true, will trace filter.
setObserverTrace(boolean $trace = false) : void
access |
public |
---|
boolean
Default is false. If set to true, will trace observer.
writeCache(string $key, string $content, array $options = array()) : void
access |
public |
---|
string
The key to be used accessing the cache
string
The content to be cached
array
Options that define how the files are cached -'cache_format' string: The date/time format used when caching -'cache_format_search' string: The preg_match to use when searching for the cache date/time -'enclosing_tags' array: Tags that will encase the files to be caches -'cache_location' string: The location the cached is saved -'cache_name' string: The name to assign to the cache when both writing and reading it -'cache_expire' int: Ovveride the default expiration time by setting your own
writeMemcache(string $key, mixed $content, array $options = array()) : void
access |
public |
---|
string
The key that will be assoicated with the file
mixed
The content that will be written to memcache
array
Options that are used when defining memcache -'flag' int: The flag used when writing to the memcache object -'cache_expire'int: Override the default cache expire. Expiration is set in seconds -'add_only' boolean: Only add to the cache if the key does not already exist -'replace' boolean: Only add to the cache if the key does exit
_cache_location :
_cache_format :
_cache_format_search :
_cache_name :
_memcache :
_cache_expire :
_collection :
_methods :
_adapters :
_observers :
_instances :
_filters :
_traceAdapters :
_traceFilters :
_traceObservers :