PSR-16 compliant memcache wrapper with Horde-specific extensions.
composer require horde/memcacheuse Horde\Memcache\{MemcacheApi, Config};
$config = new Config(
hostspec: ['127.0.0.1'],
port: [11211],
prefix: 'myapp_'
);
$cache = new MemcacheApi($config);
// PSR-16 interface (standard)
$cache->set('key', 'value', 3600);
$value = $cache->get('key', 'default');
$cache->delete('key');
// Horde Extended interface (large items, multi-key)
$cache->setLarge('report', $hugeData, 3600); // >1MB OK
$values = $cache->getItems(['k1', 'k2', 'k3']);
$cache->deleteDelayed('lock', 30);get set delete clear has getMultiple setMultiple deleteMultiple
- Standard cache operations
- Items < 1MB
- Framework-portable
getLarge setLarge getItems deleteDelayed
- Large items (>1MB auto-chunking)
- Multi-key batch retrieval
- Delete with timeout
Both Memcache and Memcached PHP extensions fully supported with equal features.
- PHP 8.1+
- memcache or memcached PHP extension
- memcached server
- doc/UPGRADING.md - Migration guide from 2.x
- src/HordeMemcacheInterface.php - Extended API contract
- PSR-16: https://www.php-fig.org/psr/psr-16/
LGPL 2.1 - See LICENSE file