symfony

Symfony PhpFilesAdapter - speed, simplicity, security

Up to to day PhpFilesAdapter stores compiled PHP files that OPcache reads fast. No services. Atomic writes. Good default for single-host pages and API fragments.

Install:

composer require symfony/cache

Usage Example:

<?php
use Symfony\Component\Cache\Adapter\PhpFilesAdapter;
use Symfony\Contracts\Cache\ItemInterface;
 
require __DIR__ . '/vendor/autoload.php';
 
$cacheDir = __DIR__ . '/../var/cache'; // place outside web root
$cache = new PhpFilesAdapter('myapp', 0, $cacheDir);
 
$key = 'page:home:v1';
 
$html = $cache->get($key, function (ItemInterface $item) {
  $item->expiresAfter(900); // 15 minutes
 
  return render_home();
});
 
echo $html;
 

Resume:

- Files only, very fast with OPcache.
- Atomic writes via callback; simple stampede control.
- Per-host cache. Clear by versioning keys or deleting files.

Links: