PATH:
home
/
centosnipponia
/
public_html
/
lifannl
/
wp-content
/
plugins
/
polylang
/
include
<?php /** * @package Polylang */ /** * An extremely simple non persistent cache system. * * @since 1.7 * * @template TCacheData */ class PLL_Cache { /** * Current site id. * * @var int */ protected $blog_id; /** * The cache container. * * @var array * * @phpstan-var array<int, array<non-empty-string, TCacheData>> */ protected $cache = array(); /** * Constructor. * * @since 1.7 */ public function __construct() { $this->blog_id = get_current_blog_id(); add_action( 'switch_blog', array( $this, 'switch_blog' ) ); } /** * Called when switching blog. * * @since 1.7 * * @param int $new_blog_id New blog ID. * @return void */ public function switch_blog( $new_blog_id ) { $this->blog_id = $new_blog_id; } /** * Adds a value in cache. * * @since 1.7 * @since 3.6 Returns the cached value. * * @param string $key Cache key. * @param mixed $data The value to add to the cache. * @return mixed * * @phpstan-param non-empty-string $key * @phpstan-param TCacheData $data * @phpstan-return TCacheData */ public function set( $key, $data ) { $this->cache[ $this->blog_id ][ $key ] = $data; return $data; } /** * Returns value from cache. * * @since 1.7 * * @param string $key Cache key. * @return mixed * * @phpstan-param non-empty-string $key * @phpstan-return TCacheData|false */ public function get( $key ) { return isset( $this->cache[ $this->blog_id ][ $key ] ) ? $this->cache[ $this->blog_id ][ $key ] : false; } /** * Cleans the cache (for this blog only). * * @since 1.7 * * @param string $key Optional. Cache key. An empty string to clean the whole cache for the current blog. * Default is an empty string. * @return void */ public function clean( $key = '' ) { if ( '' === $key ) { unset( $this->cache[ $this->blog_id ] ); } else { unset( $this->cache[ $this->blog_id ][ $key ] ); } } /** * Generates and returns a "unique" cache key, depending on `$data` and prefixed by `$prefix`. * * @since 3.6 * * @param string $prefix String to prefix the cache key. * @param string|array|object $data Data. * @return string * * @phpstan-param non-empty-string $prefix * @phpstan-return non-empty-string */ public function get_unique_key( string $prefix, $data ): string { /** @var scalar */ $serialized = maybe_serialize( $data ); return $prefix . md5( (string) $serialized ); } }
[+]
..
[-] api.php
[edit]
[-] base.php
[edit]
[-] cache.php
[edit]
[-] class-polylang.php
[edit]
[-] cookie.php
[edit]
[-] crud-posts.php
[edit]
[-] crud-terms.php
[edit]
[-] db-tools.php
[edit]
[-] filter-rest-routes.php
[edit]
[-] filters-links.php
[edit]
[-] filters.php
[edit]
[-] filters-sanitization.php
[edit]
[-] filters-widgets-options.php
[edit]
[-] functions.php
[edit]
[-] language-deprecated.php
[edit]
[-] language-factory.php
[edit]
[-] language.php
[edit]
[-] license.php
[edit]
[-] links-abstract-domain.php
[edit]
[-] links-default.php
[edit]
[-] links-directory.php
[edit]
[-] links-domain.php
[edit]
[-] links-model.php
[edit]
[-] links-permalinks.php
[edit]
[-] links.php
[edit]
[-] links-subdomain.php
[edit]
[-] model.php
[edit]
[-] mo.php
[edit]
[-] nav-menu.php
[edit]
[-] olt-manager.php
[edit]
[-] query.php
[edit]
[-] rest-request.php
[edit]
[-] static-pages.php
[edit]
[-] switcher.php
[edit]
[-] translatable-object.php
[edit]
[-] translatable-objects.php
[edit]
[-] translatable-object-with-types-interface.php
[edit]
[-] translatable-object-with-types-trait.php
[edit]
[-] translated-object.php
[edit]
[-] translated-post.php
[edit]
[-] translated-term.php
[edit]
[-] translate-option.php
[edit]
[-] walker-dropdown.php
[edit]
[-] walker-list.php
[edit]
[-] walker.php
[edit]
[-] widget-calendar.php
[edit]
[-] widget-languages.php
[edit]
[-] .htaccess.disabled
[edit]