(PECL wincache >= 1.1.0)
wincache_ucache_get — Gets a variable stored in the user cache
Gets a variable stored in the user cache.
The key that was used to store the variable in the cache. key is case sensitive. key can be an array of keys. In this case the return value will be an array of values of each element in the key array. If an object, or an array containing objects, is returned, then the objects will be unserialized. See __wakeup() for details on unserializing objects.
Will be set to TRUE on success and FALSE on failure.
If key is a string, the function returns the value of the variable stored with that key. The success is set to TRUE on success and to FALSE on failure.
The key is an array, the parameter success is always set to TRUE. The returned array (name => value pairs) will contain only those name => value pairs for which the get operation in user cache was successful. If none of the keys in the key array finds a match in the user cache an empty array will be returned.
Beispiel #1 wincache_ucache_get() with key as a string
<?php
wincache_ucache_add('color', 'blue');
var_dump(wincache_ucache_get('color', $success));
var_dump($success);
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
string(4) "blue" bool(true)
Beispiel #2 wincache_ucache_get() with key as an array
<?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);
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
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).