(PECL wincache >= 1.1.0)
wincache_ucache_get — Récupère une variable stockée dans le cache utilisateur
Récupère une variable stockée dans le cache utilisateur.
key
La clé key utilisée pour stocker la variable
dans le cache. Le paramètre key est sensible à la casse.
key peut être un tableau de clés. Dans ce cas, la valeur
retournée sera un tableau de valeurs de chaque élément du tableau key.
Si un objet ou un tableau contenant des objets est retourné, alors les objets
seront désérialisés. Se reporter à la fonction
__wakeup() pour plus
de détails sur la désérialisation des objets.
success
Sera définie à true en cas de succès, false si une erreur survient.
Si le paramètre key est une chaîne de caractères, la fonction retournera
la valeur de la variable stockée avec cette clé. Le paramètre success
sera défini à true en cas de succès, et à false si une erreur survient.
Si le paramètre key est un tableau, le paramètre
success sera toujours défini à true . Le tableau retourné
(paires de nom => valeur) contiendra uniquement les paires nom => valeur pour
lesquelles la récupération depuis le cache utilisateur a été un succès.
Si aucune des clés du tableau ne correspond à des entrées du cache utilisateur,
un tableau vide sera retourné.
Exemple #1 Exemple avec wincache_ucache_get() et
le paramètre key sous forme de chaîne de caractères
<?php
wincache_ucache_add('color', 'blue');
var_dump(wincache_ucache_get('color', $success));
var_dump($success);
?>L'exemple ci-dessus va afficher :
string(4) "blue" bool(true)
Exemple #2 Exemple avec wincache_ucache_get() et
le paramètre key sous forme d'un tableau
<?php
$array1 = array('green' => '5', 'Blue' => '6', 'yellow' => '7', 'cyan' => '8');
wincache_ucache_set($array1);
$array2 = array('green', 'Blue', 'yellow', 'cyan');
var_dump(wincache_ucache_get($array2, $success));
var_dump($success);
?>L'exemple ci-dessus va afficher :
array(4) { ["green"]=> string(1) "5"
["Blue"]=> string(1) "6"
["yellow"]=> string(1) "7"
["cyan"]=> string(1) "8" }
bool(true)
As per documentation PHP 5.2 doesn't support serialization of PHP internal classes. This means code below will not work:
<?php
$d = new DateTime();
$d->format(DateTime::W3C);
wincache_ucache_set( 'q1', $d );
var_dump( wincache_ucache_get( 'q1' )->format(DATE_ATOM));
?>
The output of above code will be (as of PHP5.2.13):
[11-Feb-2010 08:35:29] PHP Warning: DateTime::format() [<a href='datetime.format'>datetime.format</a>]: The DateTime object has not been correctly initialized by its constructor in C:\inetpub\wwwroot\phptest\tests\ucache\wincache8.php on line 5
And last var_dump will return bool(false).