J'ai la fonction suivante:APC ne fonctionne pas comme prévu?
function Cache($key, $value = null, $ttl = 60)
{
if (isset($value) === true)
{
apc_store($key, $value, intval($ttl));
}
return apc_fetch($key);
}
Et je le tester en utilisant le code suivant:
Cache('ktime', time(), 3); // Store
sleep(1);
var_dump(Cache('ktime') . '-' . time()); echo '<hr />'; // Should Fetch
sleep(5);
var_dump(Cache('ktime') . '-' . time()); echo '<hr />'; // Should NOT Fetch
sleep(1);
var_dump(Cache('ktime') . '-' . time()); echo '<hr />'; // Should NOT Fetch
sleep(1);
var_dump(Cache('ktime') . '-' . time()); echo '<hr />'; // Should NOT Fetch
Et voici la sortie:
string(21) "1273966771-1273966772"
string(21) "1273966771-1273966777"
string(21) "1273966771-1273966778"
string(21) "1273966771-1273966779"
devrait-il pas il ressemble à ceci:
string(21) "1273966771-1273966772"
string(11) "-1273966777"
string(11) "-1273966778"
string(11) "-1273966779"
Je ne comprends pas, quelqu'un peut-il m'aider à comprendre ce comportement étrange?
Oh! Thats ce que les « sur la demande suivante » signifie, je demande que * * signifiait la prochaine 'apc_fetch()' appel. Merci Bill, maintenant je peux profiter de ce "bug". =) –