[ Index ]

PHP Cross Reference of WordPress

title

Body

[close]

/wp-includes/ -> cache-compat.php (source)

   1  <?php
   2  /**
   3   * Object Cache API functions missing from 3rd party object caches.
   4   *
   5   * @link https://developer.wordpress.org/reference/classes/wp_object_cache/
   6   *
   7   * @package WordPress
   8   * @subpackage Cache
   9   */
  10  
  11  if ( ! function_exists( 'wp_cache_add_multiple' ) ) :
  12      /**
  13       * Adds multiple values to the cache in one call, if the cache keys don't already exist.
  14       *
  15       * Compat function to mimic wp_cache_add_multiple().
  16       *
  17       * @ignore
  18       * @since 6.0.0
  19       *
  20       * @see wp_cache_add_multiple()
  21       *
  22       * @param array  $data   Array of keys and values to be added.
  23       * @param string $group  Optional. Where the cache contents are grouped. Default empty.
  24       * @param int    $expire Optional. When to expire the cache contents, in seconds.
  25       *                       Default 0 (no expiration).
  26       * @return bool[] Array of return values, grouped by key. Each value is either
  27       *                true on success, or false if cache key and group already exist.
  28       */
  29  	function wp_cache_add_multiple( array $data, $group = '', $expire = 0 ) {
  30          $values = array();
  31  
  32          foreach ( $data as $key => $value ) {
  33              $values[ $key ] = wp_cache_add( $key, $value, $group, $expire );
  34          }
  35  
  36          return $values;
  37      }
  38  endif;
  39  
  40  if ( ! function_exists( 'wp_cache_set_multiple' ) ) :
  41      /**
  42       * Sets multiple values to the cache in one call.
  43       *
  44       * Differs from wp_cache_add_multiple() in that it will always write data.
  45       *
  46       * Compat function to mimic wp_cache_set_multiple().
  47       *
  48       * @ignore
  49       * @since 6.0.0
  50       *
  51       * @see wp_cache_set_multiple()
  52       *
  53       * @param array  $data   Array of keys and values to be set.
  54       * @param string $group  Optional. Where the cache contents are grouped. Default empty.
  55       * @param int    $expire Optional. When to expire the cache contents, in seconds.
  56       *                       Default 0 (no expiration).
  57       * @return bool[] Array of return values, grouped by key. Each value is either
  58       *                true on success, or false on failure.
  59       */
  60  	function wp_cache_set_multiple( array $data, $group = '', $expire = 0 ) {
  61          $values = array();
  62  
  63          foreach ( $data as $key => $value ) {
  64              $values[ $key ] = wp_cache_set( $key, $value, $group, $expire );
  65          }
  66  
  67          return $values;
  68      }
  69  endif;
  70  
  71  if ( ! function_exists( 'wp_cache_get_multiple' ) ) :
  72      /**
  73       * Retrieves multiple values from the cache in one call.
  74       *
  75       * Compat function to mimic wp_cache_get_multiple().
  76       *
  77       * @ignore
  78       * @since 5.5.0
  79       *
  80       * @see wp_cache_get_multiple()
  81       *
  82       * @param array  $keys  Array of keys under which the cache contents are stored.
  83       * @param string $group Optional. Where the cache contents are grouped. Default empty.
  84       * @param bool   $force Optional. Whether to force an update of the local cache
  85       *                      from the persistent cache. Default false.
  86       * @return array Array of return values, grouped by key. Each value is either
  87       *               the cache contents on success, or false on failure.
  88       */
  89  	function wp_cache_get_multiple( $keys, $group = '', $force = false ) {
  90          $values = array();
  91  
  92          foreach ( $keys as $key ) {
  93              $values[ $key ] = wp_cache_get( $key, $group, $force );
  94          }
  95  
  96          return $values;
  97      }
  98  endif;
  99  
 100  if ( ! function_exists( 'wp_cache_delete_multiple' ) ) :
 101      /**
 102       * Deletes multiple values from the cache in one call.
 103       *
 104       * Compat function to mimic wp_cache_delete_multiple().
 105       *
 106       * @ignore
 107       * @since 6.0.0
 108       *
 109       * @see wp_cache_delete_multiple()
 110       *
 111       * @param array  $keys  Array of keys under which the cache to deleted.
 112       * @param string $group Optional. Where the cache contents are grouped. Default empty.
 113       * @return bool[] Array of return values, grouped by key. Each value is either
 114       *                true on success, or false if the contents were not deleted.
 115       */
 116  	function wp_cache_delete_multiple( array $keys, $group = '' ) {
 117          $values = array();
 118  
 119          foreach ( $keys as $key ) {
 120              $values[ $key ] = wp_cache_delete( $key, $group );
 121          }
 122  
 123          return $values;
 124      }
 125  endif;
 126  
 127  if ( ! function_exists( 'wp_cache_flush_runtime' ) ) :
 128      /**
 129       * Removes all cache items from the in-memory runtime cache.
 130       *
 131       * Compat function to mimic wp_cache_flush_runtime().
 132       *
 133       * @ignore
 134       * @since 6.0.0
 135       *
 136       * @see wp_cache_flush_runtime()
 137       *
 138       * @return bool True on success, false on failure.
 139       */
 140  	function wp_cache_flush_runtime() {
 141          return wp_using_ext_object_cache() ? false : wp_cache_flush();
 142      }
 143  endif;


Generated: Sat Apr 27 01:00:02 2024 Cross-referenced by PHPXref 0.7.1