Why key_1
is not cleared when execution time is greater than TTL
?
$ttl = 3;
$key = 'key_1';
if (apc_exists($key)) {
echo "Data exists!
";
if (apc_delete($key))
echo "Data deleted.
";
else
die("Unable to delete data
");
} else {
echo "Data not present.
";
}
apc_add($key, 'some-value', $ttl);
$start = microtime(true);
echo "TTL: ".$ttl."sec
";
while (1) {
sleep(1);
$exec_time = round(microtime(true) - $start, 1);
$data = apc_fetch($key);
if (!empty($data)) {
echo 'key_1: ['.$data.']: '
.$exec_time."sec"
.(($exec_time > $ttl) ? "\t<<< Data still exists!
" : "
");
} else {
die("Data was cleared!
");
}
}