A high-performance backend cache system. It is intended for use in speeding up dynamic web applications by alleviating database load. Well implemented, it can drops the database load to almost nothing, yielding faster page load times for users, better resource utilization. It is simple yet powerful.
Ravendb
as an extension with its own sub-repository.
\Phpfastcache\Entities\DriverStatistic::getData()
. Will be removed as of v10.\Phpfastcache\Entities\DriverStatistic::setData()
. Will be removed as of v10.\Phpfastcache\Entities\DriverStatistic::getCount(): int|null
. If applicable will return the count of cache objects stored in driver database/collection. Null otherwise.\Phpfastcache\Entities\DriverStatistic::setCount()
\Phpfastcache\Core\Pool\CacheItemPoolTrait::getKeys()
4.3.0
(see changes)Couchbasev4
support to its own sub-repository.Arangodb
, Couchdb
, Dynamodb
, Firestore
, Mongodb
, Solr
. However Couchbasev3
will stay in the core for compatibility reasons but will be deprecated.Phpfastcache\Drivers\EXT_NAME\{Config, Driver, Event, Item}
to Phpfastcache\Extensions\Drivers\EXT_NAME\{Config, Driver, Event, Item}
. For now an alias is ensuring compatibility.ExtendedCacheItemPoolTrait::->getEventManager()
. Global EventManager EventManager::getInstance()
remains unchanged, see EVENTS.md.EventManagerInterface::on()
now also accepts a single string $events
.\Phpfastcache\PhpfastcacheEventManager
of \Phpfastcache\EventManager
has been added to improve your code import readability.\Phpfastcache\Event\EventManagerDispatcherInterface::hasEventManager
to be removed for v10.RedisCluster
driver support
Memstatic
has changed its name to Memory
for more consistency.Wincache
is now deprecated and will be removed as of v10 due to the lack of updates to PHP 8 as officially stated by PHP.ExtendedCacheItemPoolTrait::getAllItems
to allow you to retrieve all items in the cache. This method have some limitations, (see more in the Wiki).ConfigurationOption::isPreventCacheSlams()
, ConfigurationOption::setPreventCacheSlams()
, ConfigurationOption::getCacheSlamsTimeout()
, ConfigurationOption::setCacheSlamsTimeout()
are deprecated. (See changes).getItems()
calls. Currently only supported in some backends, but it may evolve in the future.deleteItems()
calls. Currently only supported in some backends, but it may evolve in the future.\Phpfastcache\CacheContract::get()
now accepts a \Stringable $cacheKey
argument.\Phpfastcache\Core\Item\TaggableCacheItemInterface::isTagged(): bool
4.3.0
(see changes)ExtendedCacheItemPoolTrait::->getEventManager()
. Global EventManager EventManager::getInstance()
remains unchanged, see EVENTS.md.RedisCluster
driver support
ExtendedCacheItemPoolTrait::getAllItems
to allow you to retrieve all items in the cache. This method have some limitations, (see more in the Wiki).ConfigurationOption::isPreventCacheSlams()
, ConfigurationOption::setPreventCacheSlams()
, ConfigurationOption::getCacheSlamsTimeout()
, ConfigurationOption::setCacheSlamsTimeout()
are deprecated. (See changes).getItems()
calls. Currently only supported in some backends, but it may evolve in the future.deleteItems()
calls. Currently only supported in some backends, but it may evolve in the future.⚠️ This beta version will continue to improve and a stable release of the v9.2 is expected for the second week of January 2024.
4.2.0
(see changes)driverRead()
(reported by @ShockedPlot7560 and @aemla)