Zend\Cache\Pattern\CaptureCache¶
Overview¶
The CaptureCache
pattern is useful to auto-generate static resources in base of a HTTP request.
The Webserver needs to be configured to run a PHP script generating the requested resource so further
requests for the same resource can be shipped without calling PHP again.
It comes with basic logic to manage generated resources.
Quick Start¶
Simplest usage as Apache-404 handler
1 2 | # .htdocs
ErrorDocument 404 /index.php
|
1 2 3 4 5 6 7 8 9 10 11 12 13 | // index.php
use Zend\Cache\PatternFactory;
$capture = Zend\Cache\PatternFactory::factory('capture', array(
'public_dir' => __DIR__,
));
// Start capturing all output excl. headers and write to public directory
$capture->start();
// Don't forget to change HTTP response code
header('Status: 200', true, 200);
// do stuff to dynamically generate output
|
Configuration Options¶
Option | Data Type | Default Value | Description |
---|---|---|---|
public_dir | string |
<none> | Location of public directory to write output to |
index_filename | string |
“index.html” | The name of the first file if only a directory was requested |
file_locking | boolean |
true |
Locking output files on writing |
file_permission | integer boolean |
0600 (false on win) |
Set permissions of generated output files |
dir_permission | integer boolean |
0700 (false on win) |
Set permissions of generated output directories |
umask | integer boolean |
false |
Using umask on generating output files / directories |
Available Methods¶
-
start
(string|null $pageId = null) Start capturing output.
Tipo de retorno: void
-
set
(string $content, string|null $pageId = null) Write content to page identity.
Tipo de retorno: void
-
get
(string|null $pageId = null) Get content of an already cached page.
Tipo de retorno: string|false
-
has
(string|null $pageId = null) Check if a page has been created.
Tipo de retorno: boolean
-
remove
(string|null $pageId = null) Remove a page.
Tipo de retorno: boolean
-
clearByGlob
(string $pattern = '**') Clear pages matching glob pattern.
Tipo de retorno: void
-
setOptions
(Zend\Cache\Pattern\PatternOptions $options) Set pattern options.
Tipo de retorno: Zend\Cache\Pattern\CaptureCache
-
getOptions
() Get all pattern options.
Tipo de retorno: Zend\Cache\Pattern\PatternOptions
Examples¶
Scaling images in base of request
1 2 | # .htdocs
ErrorDocument 404 /index.php
|
1 2 3 4 5 6 | // index.php
$captureCache = Zend\Cache\PatternFactory::factory('capture', array(
'public_dir' => __DIR__,
));
// TODO
|