Class Phalcon\Cache\Backend\Apc

extends abstract class Phalcon\Cache\Backend

implements Phalcon\Cache\BackendInterface

Source on GitHub

Allows to cache output fragments, PHP data and raw data using an APC backend

  1. <?php
  2. use Phalcon\Cache\Backend\Apc;
  3. use Phalcon\Cache\Frontend\Data as FrontData;
  4. // Cache data for 2 days
  5. $frontCache = new FrontData(
  6. [
  7. "lifetime" => 172800,
  8. ]
  9. );
  10. $cache = new Apc(
  11. $frontCache,
  12. [
  13. "prefix" => "app-data",
  14. ]
  15. );
  16. // Cache arbitrary data
  17. $cache->save("my-data", [1, 2, 3, 4, 5]);
  18. // Get data
  19. $data = $cache->get("my-data");

Methods

public get (mixed $keyName, [mixed $lifetime])

Returns a cached content

public save ([string | int $keyName], [string $content], [int $lifetime], [boolean $stopBuffer])

Stores cached content into the APC backend and stops the frontend

public increment ([string $keyName], [mixed $value])

Increment of a given key, by number $value

public decrement ([string $keyName], [mixed $value])

Decrement of a given key, by number $value

public delete (mixed $keyName)

Deletes a value from the cache by its key

public queryKeys ([mixed $prefix])

Query the existing cached keys.

  1. <?php
  2. $cache->save("users-ids", [1, 2, 3]);
  3. $cache->save("projects-ids", [4, 5, 6]);
  4. var_dump($cache->queryKeys("users")); // ["users-ids"]

public exists ([string | int $keyName], [int $lifetime])

Checks if cache exists and it hasn’t expired

public flush ()

Immediately invalidates all existing items.

  1. <?php
  2. use Phalcon\Cache\Backend\Apc;
  3. $cache = new Apc($frontCache, ["prefix" => "app-data"]);
  4. $cache->save("my-data", [1, 2, 3, 4, 5]);
  5. // 'my-data' and all other used keys are deleted
  6. $cache->flush();

public getFrontend () inherited from Phalcon\Cache\Backend

public setFrontend (mixed $frontend) inherited from Phalcon\Cache\Backend

public getOptions () inherited from Phalcon\Cache\Backend

public setOptions (mixed $options) inherited from Phalcon\Cache\Backend

public getLastKey () inherited from Phalcon\Cache\Backend

public setLastKey (mixed $lastKey) inherited from Phalcon\Cache\Backend

public __construct (Phalcon\Cache\FrontendInterface $frontend, [array $options]) inherited from Phalcon\Cache\Backend

Phalcon\Cache\Backend constructor

public mixed start (int | string $keyName, [int $lifetime]) inherited from Phalcon\Cache\Backend

Starts a cache. The keyname allows to identify the created fragment

public stop ([mixed $stopBuffer]) inherited from Phalcon\Cache\Backend

Stops the frontend without store any cached content

public isFresh () inherited from Phalcon\Cache\Backend

Checks whether the last cache is fresh or cached

public isStarted () inherited from Phalcon\Cache\Backend

Checks whether the cache has starting buffering or not

public int getLifetime () inherited from Phalcon\Cache\Backend

Gets the last lifetime set