Symfony has a very powerful built-in caching. You can use it directly by calling the default app cache and use it.

use Symfony\Component\Cache\Adapter\FilesystemAdapter;


function getCachedData()

     * @var FilesystemAdapter $cache
    $cache = $this->get('');

    //Define a key for the item
    $cacheKey = 'SOME_UNIQUE_KEY';

    //Fetch the cached item from the cache
    $cacheItem = $cache->getItem($cacheKey);

    //Check if the cache is present and is still valid.
    if ($cacheItem->isHit()) {
        //Get the cached value and return
        $data = $cache->getItem($cacheKey)->get();
        return $data;

    //Since there is no cache available you can prepare the data
    $data = [10,20,30];

    //Set the data to cache object

    //You can set an expire time if you need.
    //Below I have set the cache to 1 hour.
    $cacheItem->expiresAfter(60 * 60);

    //Save the cache

    //Return the data
    return $data;


You can use this a lot in your application in places where you access databases or accessing the web services.

Have a great day 😊