function DatabaseBackend::invalidateMultiple

Same name in other branches
  1. 8.9.x core/lib/Drupal/Core/Cache/DatabaseBackend.php \Drupal\Core\Cache\DatabaseBackend::invalidateMultiple()
  2. 10 core/lib/Drupal/Core/Cache/DatabaseBackend.php \Drupal\Core\Cache\DatabaseBackend::invalidateMultiple()
  3. 11.x core/lib/Drupal/Core/Cache/DatabaseBackend.php \Drupal\Core\Cache\DatabaseBackend::invalidateMultiple()

Overrides CacheBackendInterface::invalidateMultiple

1 call to DatabaseBackend::invalidateMultiple()
DatabaseBackend::invalidate in core/lib/Drupal/Core/Cache/DatabaseBackend.php

File

core/lib/Drupal/Core/Cache/DatabaseBackend.php, line 333

Class

DatabaseBackend
Defines a default cache implementation.

Namespace

Drupal\Core\Cache

Code

public function invalidateMultiple(array $cids) {
    $cids = array_values(array_map([
        $this,
        'normalizeCid',
    ], $cids));
    try {
        // Update in chunks when a large array is passed.
        foreach (array_chunk($cids, 1000) as $cids_chunk) {
            $this->connection
                ->update($this->bin)
                ->fields([
                'expire' => REQUEST_TIME - 1,
            ])
                ->condition('cid', $cids_chunk, 'IN')
                ->execute();
        }
    } catch (\Exception $e) {
        $this->catchException($e);
    }
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.