The
APCUIterator
class makes it easier to iterate over large APCu caches. This is helpful as it allows iterating over large caches in steps, while grabbing a defined number of entries per lock instance, so it frees the cache locks for other activities rather than hold up the entire cache to grab 100 (the default) entries. Also, using regular expression matching is more efficient as it's been moved to the C level.
Class synopsis
class
APCUIterator
implements
Iterator
{
/* Methods */
public
__construct
(
array
|
string
|
null
$search
=
null
,
int
$format
= APC_ITER_ALL
,
int
$chunk_size
= 100
,
int
$list
= APC_LIST_ACTIVE
)
publiccurrent():mixed
publicgetTotalCount():int
publicgetTotalHits():int
publicgetTotalSize():int
publickey():string
publicnext():bool
publicrewind():void
publicvalid():bool
}
Table of Contents
APCUIterator::__construct — Constructs an APCUIterator iterator object
APCUIterator::current — Get current item
APCUIterator::getTotalCount — Get total count
APCUIterator::getTotalHits — Get total cache hits
APCUIterator::getTotalSize — Get total cache size
APCUIterator::key — Get iterator key
APCUIterator::next — Move pointer to next item
APCUIterator::rewind — Rewinds iterator
APCUIterator::valid — Checks if current position is valid
PHP / APCUIterator::__construct — DevDocs
APCUIterator::__construct
(PECL apcu >= 5.0.0)
APCUIterator::__construct
—
Constructs an APCUIterator iterator object
Description
public
APCUIterator::__construct
(
array
|
string
|
null
$search
=
null
,
int
$format
= APC_ITER_ALL
,
int
$chunk_size
= 100
,
int
$list
= APC_LIST_ACTIVE
)
Constructs an
APCUIterator
object
.
Parameters
search
Either a PCRE regular expression that matches against APCu key names, given as a
string
. Or an
array
of
string
s with APCu key names. Or, optionally
null
to skip the search.
format
The desired format, as configured with one or more of the APC_ITER_* constants.
chunk_size
The chunk size. Must be a value greater than 0. The default value is 100.
list
The type to list. Either pass in
APC_LIST_ACTIVE
or
APC_LIST_DELETED
.