Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

clearstatcache(3) [php man page]

CLEARSTATCACHE(3)							 1							 CLEARSTATCACHE(3)

clearstatcache - Clears file status cache

SYNOPSIS
void clearstatcache ([bool $clear_realpath_cache = false], [string $filename]) DESCRIPTION
When you use stat(3), lstat(3), or any of the other functions listed in the affected functions list (below), PHP caches the information those functions return in order to provide faster performance. However, in certain cases, you may want to clear the cached information. For instance, if the same file is being checked multiple times within a single script, and that file is in danger of being removed or changed during that script's operation, you may elect to clear the status cache. In these cases, you can use the clearstatcache(3) function to clear the information that PHP caches about a file. You should also note that PHP doesn't cache information about non-existent files. So, if you call file_exists(3) on a file that doesn't exist, it will return FALSE until you create the file. If you create the file, it will return TRUE even if you then delete the file. How- ever unlink(3) clears the cache automatically. Note This function caches information about specific filenames, so you only need to call clearstatcache(3) if you are performing multi- ple operations on the same filename and require the information about that particular file to not be cached. Affected functions include stat(3), lstat(3), file_exists(3), is_writable(3), is_readable(3), is_executable(3), is_file(3), is_dir(3), is_link(3), filectime(3), fileatime(3), filemtime(3), fileinode(3), filegroup(3), fileowner(3), filesize(3), filetype(3), and fileperms(3). PARAMETERS
o $clear_realpath_cache - Whether to clear the realpath cache or not. o $filename - Clear the realpath and the stat cache for a specific filename only; only used if $clear_realpath_cache is TRUE. RETURN VALUES
No value is returned. CHANGELOG
+--------+---------------------------------------------------+ |Version | | | | | | | Description | | | | +--------+---------------------------------------------------+ | 5.3.0 | | | | | | | Added optional $clear_realpath_cache and $file- | | | name parameters. | | | | +--------+---------------------------------------------------+ EXAMPLES
Example #1 clearstatcache(3) example <?php $file = 'output_log.txt'; function get_owner($file) { $stat = stat($file); $user = posix_getpwuid($stat['uid']); return $user['name']; } $format = "UID @ %s: %s "; printf($format, date('r'), get_owner($file)); chown($file, 'ross'); printf($format, date('r'), get_owner($file)); clearstatcache(); printf($format, date('r'), get_owner($file)); ?> The above example will output something similar to: UID @ Sun, 12 Oct 2008 20:48:28 +0100: root UID @ Sun, 12 Oct 2008 20:48:28 +0100: root UID @ Sun, 12 Oct 2008 20:48:28 +0100: ross PHP Documentation Group CLEARSTATCACHE(3)

Check Out this Related Man Page

Historical(3pm) 					User Contributed Perl Documentation					   Historical(3pm)

NAME
Cache::Historical - Cache historical values SYNOPSIS
use Cache::Historical; my $cache = Cache::Historical->new(); # Set a key's value on a specific date $cache->set( $dt, $key, $value ); # Get a key's value on a specific date my $value = $cache->get( $dt, $key ); # Same as 'get', but if we don't have a value at $dt, but we # do have values for dates < $dt, return the previous # historic value. $cache->get_interpolated( $dt, $key ); DESCRIPTION
Cache::Historical caches historical values by key and date. If you have something like historical stock quotes, for example 2008-01-02 msft 35.22 2008-01-03 msft 35.37 2008-01-04 msft 34.38 2008-01-07 msft 34.61 then you can store them in Cache::Historical like my $cache = Cache::Historical->new(); my $fmt = DateTime::Format::Strptime->new( pattern => "%Y-%m-%d"); $cache->set( $fmt->parse_datetime("2008-01-02"), "msft", 35.22 ); $cache->set( $fmt->parse_datetime("2008-01-03"), "msft", 35.37 ); $cache->set( $fmt->parse_datetime("2008-01-04"), "msft", 34.38 ); $cache->set( $fmt->parse_datetime("2008-01-07"), "msft", 34.61 ); and retrieve them later by date: my $dt = $fmt->parse_datetime("2008-01-03"); # Returns 35.37 my $value = $cache->get( $dt, "msft" ); Even if there's no value available for a given date, but there are historical values that predate the requested date, "get_interpolated()" will return the next best historical value: my $dt = $fmt->parse_datetime("2008-01-06"); # Returns undef, no value available for 2008-01-06 my $value = $cache->get( $dt, "msft" ); # Returns 34.48, the value for 2008-01-04, instead. $value = $cache->get_interpolated( $dt, "msft" ); Methods new() Creates the object. Takes the SQLite file to put the date into as an additional parameter: my $cache = Cache::Historical->new( sqlite_file => "/tmp/mydata.dat", ); The SQLite file defaults to $HOME/.cache-historical/cache-historical.dat so if you have multiple caches, you need to use different SQLite files. time_range() # List the time range for which we have values for $key my($from, $to) = $cache->time_range( $key ); keys() # List all keys my @keys = $cache->keys(); values() # List all the values we have for $key, sorted by date # ([$dt, $value], [$dt, $value], ...) my @results = $cache->values( $key ); clear() # Remove all values for a specific key $cache->clear( $key ); # Clear the entire cache $cache->clear(); last_update() # Return a DateTime object of the last update of a given key my $when = $cache->last_update( $key ); since_last_update() # Return a DateTime::Duration object since the time of the last # update of a given key. my $since = $cache->since_last_update( $key ); LEGALESE
Copyright 2007-2011 by Mike Schilli, all rights reserved. This program is free software, you can redistribute it and/or modify it under the same terms as Perl itself. AUTHOR
2007, Mike Schilli <cpan@perlmeister.com> perl v5.10.1 2011-04-27 Historical(3pm)
Man Page