©
This document uses PHP Chinese website manual Release
(PECL wincache >= 1.0.0)
wincache_refresh_if_changed — Refreshes the cache entries for the cached files
$files
= NULL
] )Refreshes the cache entries for the files, whose names were passed in the input argument. If no argument is specified then refreshes all the entries in the cache.
files
An array of file names for files that need to be refreshed. An absolute or relative file paths can be used.
成功时返回 TRUE
, 或者在失败时返回 FALSE
。
WinCache performs regular checks on the cached files to ensure that if any file has changed then the corresponding entry in the cache is updated. By default this check is performed every 30 seconds. If, for example, a PHP script updates another PHP script where the application's configuration settings are stored, then it may happen that after the configuration settings have been saved to a file, the application is still using old settings for some time until the cache is refreshed. In those cases it may be preferrable to refresh the cache right after the file has been changed. The following example shows how this can be done.
Example #1 A wincache_refresh_if_changed() example
<?php
$filename = 'C:\inetpub\wwwroot\config.php' ;
$handle = fopen ( $filename , 'w+' );
if ( $handle === FALSE ) die( 'Failed to open file ' . $filename . ' for writing' );
fwrite ( $handle , '<?php $setting=something; ?>' );
fclose ( $handle );
wincache_refresh_if_changed (array( $filename ));
?>