©
This document uses PHP Chinese website manual Release
(PECL wincache >= 1.1.0)
wincache_ucache_get — Gets a variable stored in the user cache
$key
[, bool &$success
] )Gets a variable stored in the user cache.
key
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.
success
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.
Example #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 );
?>
以上例程会输出:
string(4) "blue" bool(true)
Example #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 );
?>
以上例程会输出:
array(4) { ["green"]=> string(1) "5" ["Blue"]=> string(1) "6" ["yellow"]=> string(1) "7" ["cyan"]=> string(1) "8" } bool(true)
[#1] don dot raman at microsoft dot com [2010-03-09 11:12:55]
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).