implements Phalcon\Cache\FrontendInterface
Allows to cache output fragments captured with ob_* functions
* * use Phalcon\Tag; * use Phalcon\Cache\Backend\File; * use Phalcon\Cache\Frontend\Output; * * // Create an Output frontend. Cache the files for 2 days * $frontCache = new Output( * [ * "lifetime" => 172800, * ] * ); * * // Create the component that will cache from the "Output" to a "File" backend * // Set the cache file directory - it's important to keep the "/" at the end of * // the value for the folder * $cache = new File( * $frontCache, * [ * "cacheDir" => "../app/cache/", * ] * ); * * // Get/Set the cache file to ../app/cache/my-cache.html * $content = $cache->start("my-cache.html"); * * // If $content is null then the content will be generated for the cache * if (null === $content) { * // Print date and time * echo date("r"); * * // Generate a link to the sign-up action * echo Tag::linkTo( * [ * "user/signup", * "Sign Up", * "class" => "signup-button", * ] * ); * * // Store the output into the cache file * $cache->save(); * } else { * // Echo the cached output * echo $content; * }
*```
## Methods
public **__construct** ([*array* $frontendOptions])
Phalcon\\Cache\\Frontend\\Output constructor
public **getLifetime** ()
Returns the cache lifetime
public **isBuffering** ()
Check whether if frontend is buffering output
public **start** ()
Starts output frontend. Currently, does nothing
public *string* **getContent** ()
Returns output cached content
public **stop** ()
Stops output frontend
public **beforeStore** (*mixed* $data)
Serializes data before storing them
public **afterRetrieve** (*mixed* $data)
Unserializes data after retrieval