Memcached::get

(PECL memcached >= 0.1.0)

Memcached::getLee un elemento

Descripción

public Memcached::get(string $key, ?callable $cache_cb = null, int $get_flags = 0): mixed

Memcached::get() lee un elemento que ha sido almacenado previamente con la clave key. Si el elemento es encontrado, y que get_flags es proporcionado Memcached::GET_EXTENDED, el valor del token CAS del elemento también será retornado. Ver Memcached::cas() para saber cómo utilizar los tokens CAS. Una función de retrollamada en caso de ausencia puede ser especificada con el parámetro cache_cb.

Parámetros

key

La clave del elemento a leer.

cache_cb

Una función de retrollamada en caso de ausencia o null.

get_flags

Bandera para controlar el resultado retornado. Cuando Memcached::GET_EXTENDED es proporcionada, la función retornará también el token CAS.

Valores devueltos

Retorna el valor almacenado en la caché, o bien false en caso contrario. Si get_flags es definido a Memcached::GET_EXTENDED, un tableau conteniendo el valor y el token CAS es retornado en lugar de solo el valor. El método Memcached::getResultCode() retorna Memcached::RES_NOTFOUND si la clave no existe.

Historial de cambios

Versión Descripción
PECL memcached 3.0.0 El parámetro &cas_tokens ha sido eliminado. Memcached::GET_EXTENDED ha sido añadida y cuando es pasada como bandera asegura que los tokens CAS sean recuperados.

Ejemplos

Ejemplo #1 Ejemplo con Memcached::get() 1

<?php
$m
= new Memcached();
$m->addServer('localhost', 11211);

$m->set('foo', 100);
var_dump($m->get('foo'));
?>

El resultado del ejemplo sería:

int(100)

Ejemplo #2 Ejemplo con Memcached::get() 2

<?php
$m
= new Memcached();
$m->addServer('localhost', 11211);

if (!(
$ip = $m->get('ip_block'))) {
if (
$m->getResultCode() == Memcached::RES_NOTFOUND) {
$ip = array();
$m->set('ip_block', $ip);
} else {
/* log error */
/* ... */
}
}
?>

Ver también