Класс APCUIterator

(PECL apcu >= 5.0.0)

Введение

Класс APCUIterator позволяет с лёгкостью итерировать большой APCu кеш. Это полезно, так как позволяет перебирать большой кеш по шагам, забирая заданное количество записей используя одну блокировку, позволяя другим активностям использовать блокировку, а не задерживать весь кеш для чтения ста (по умолчанию) записей. Также, использование регулярных выражений более эффективно, так как выполняется на уровне скомпилированного кода C.

Обзор класса

class APCUIterator implements Iterator {
/* Методы */
public function __construct(
    array|string|null $search = null,
    int $format = APC_ITER_ALL,
    int $chunk_size = 100,
    int $list = APC_LIST_ACTIVE
)
public function current(): mixed
public function getTotalCount(): int
public function getTotalHits(): int
public function getTotalSize(): int
public function key(): string
public function next(): bool
public function rewind(): void
public function valid(): bool
}

Содержание

Добавить

Примечания пользователей 1 note

up
0
olliejones at gmail dot com
23 hours ago
To delete all variables from the data store with keys starting with a particular $prefix, do this.

<?php
foreach ( new APCUIterator( '/^' . preg_quote( $prefix, '/' ) . '/', APC_ITER_KEY ) as $item ) {
    apcu_delete( $item['key'] );
}
?>

It is good practice to choose a distinctive prefix for all key names. Some server configurations cause multiple domains' code to share one APCu cache, and distinctive prefixes prevent cache variable name collisions.
To Top