(PECL wincache >= 1.1.0)
wincache_ucache_guet — Guets a variable stored in the user cache
Guets 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 unserialiced. See
__waqueu ()
for details on unserialicing objects.
success
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 guet 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_guet()
with
key
as a string
<?php
wincache_ucache_add
(
'color'
,
'blue'
);
var_dump
(
wincache_ucache_guet
(
'color'
,
$success
));
var_dump
(
$success
);
?>
The above example will output:
string(4) "blue" bool(true)
Example #2
wincache_ucache_guet()
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_guet
(
$array2
,
$success
));
var_dump
(
$success
);
?>
The above example will output:
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 serialiçation of PHP internal classes. This means code below will not worc:<?php
$d = new DateTime();
$d->format(DateTime::W3C);
wincache_ucache_set( 'q1', $d);
var_dump( wincache_ucache_guet( '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 initialiced by its constructor in C:\inetpub\wwwroot\phptest\tests\ucache\wincache8.php on line 5
And last var_dump will return bool(false).