113 lines
3.2 KiB
PHP
113 lines
3.2 KiB
PHP
<?php
|
|
|
|
namespace Safe;
|
|
|
|
use Safe\Exceptions\ApcuException;
|
|
|
|
/**
|
|
* Retrieves cached information and meta-data from APC's data store.
|
|
*
|
|
* @param bool $limited If limited is TRUE, the
|
|
* return value will exclude the individual list of cache entries. This
|
|
* is useful when trying to optimize calls for statistics gathering.
|
|
* @return array Array of cached data (and meta-data)
|
|
* @throws ApcuException
|
|
*
|
|
*/
|
|
function apcu_cache_info(bool $limited = false): array
|
|
{
|
|
error_clear_last();
|
|
$result = \apcu_cache_info($limited);
|
|
if ($result === false) {
|
|
throw ApcuException::createFromPhpError();
|
|
}
|
|
return $result;
|
|
}
|
|
|
|
|
|
/**
|
|
* apcu_cas updates an already existing integer value if the
|
|
* old parameter matches the currently stored value
|
|
* with the value of the new parameter.
|
|
*
|
|
* @param string $key The key of the value being updated.
|
|
* @param int $old The old value (the value currently stored).
|
|
* @param int $new The new value to update to.
|
|
* @throws ApcuException
|
|
*
|
|
*/
|
|
function apcu_cas(string $key, int $old, int $new): void
|
|
{
|
|
error_clear_last();
|
|
$result = \apcu_cas($key, $old, $new);
|
|
if ($result === false) {
|
|
throw ApcuException::createFromPhpError();
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
* Decreases a stored integer value.
|
|
*
|
|
* @param string $key The key of the value being decreased.
|
|
* @param int $step The step, or value to decrease.
|
|
* @param bool|null $success Optionally pass the success or fail boolean value to
|
|
* this referenced variable.
|
|
* @param int $ttl TTL to use if the operation inserts a new value (rather than decrementing an existing one).
|
|
* @return int Returns the current value of key's value on success
|
|
* @throws ApcuException
|
|
*
|
|
*/
|
|
function apcu_dec(string $key, int $step = 1, ?bool &$success = null, int $ttl = 0): int
|
|
{
|
|
error_clear_last();
|
|
$result = \apcu_dec($key, $step, $success, $ttl);
|
|
if ($result === false) {
|
|
throw ApcuException::createFromPhpError();
|
|
}
|
|
return $result;
|
|
}
|
|
|
|
|
|
/**
|
|
* Increases a stored number.
|
|
*
|
|
* @param string $key The key of the value being increased.
|
|
* @param int $step The step, or value to increase.
|
|
* @param bool|null $success Optionally pass the success or fail boolean value to
|
|
* this referenced variable.
|
|
* @param int $ttl TTL to use if the operation inserts a new value (rather than incrementing an existing one).
|
|
* @return int Returns the current value of key's value on success
|
|
* @throws ApcuException
|
|
*
|
|
*/
|
|
function apcu_inc(string $key, int $step = 1, ?bool &$success = null, int $ttl = 0): int
|
|
{
|
|
error_clear_last();
|
|
$result = \apcu_inc($key, $step, $success, $ttl);
|
|
if ($result === false) {
|
|
throw ApcuException::createFromPhpError();
|
|
}
|
|
return $result;
|
|
}
|
|
|
|
|
|
/**
|
|
* Retrieves APCu Shared Memory Allocation information.
|
|
*
|
|
* @param bool $limited When set to FALSE (default) apcu_sma_info will
|
|
* return a detailed information about each segment.
|
|
* @return array Array of Shared Memory Allocation data; FALSE on failure.
|
|
* @throws ApcuException
|
|
*
|
|
*/
|
|
function apcu_sma_info(bool $limited = false): array
|
|
{
|
|
error_clear_last();
|
|
$result = \apcu_sma_info($limited);
|
|
if ($result === false) {
|
|
throw ApcuException::createFromPhpError();
|
|
}
|
|
return $result;
|
|
}
|