| 
<?php
 /*
 * test_file_cache.php
 *
 * @(#) $Id: test_file_cache.php,v 1.1 2003/11/21 07:54:41 mlemos Exp $
 *
 */
 
 require('filecacheclass.php');
 
 ?>
 <html>
 <head>
 <title>Test Manuel Lemos File Cache class</title>
 </head>
 <body>
 <center><h1>Test Manuel Lemos File Cache class</h1></center>
 <hr />
 <?php
 
 /*
 *  First create an object of the class.
 */
 $cache_object=new file_cache_class;
 
 /*
 *  Then set the variable of the path of the cache file.
 *  In the end, take a look at the contents of this file.
 */
 $cache_object->path='mycachefile.cache';
 
 /*
 *  If we want to take different action if the cache is being updated,
 *  we can ask the class to tell if an update is in progress.
 */
 $success=$cache_object->updating($updating);
 
 /*
 *  Check the success value to make sure there was no error.
 */
 if($success)
 {
 if($updating)
 {
 echo 'Sorry, the cache file is being updated by another process running simultaneously. Please come back later.';
 }
 else
 {
 
 /*
 *  Now verify if the cache file exists is upto date.
 */
 $success=$cache_object->verifycache($updated);
 
 /*
 *  Check the success value to make sure there was no error.
 */
 if($success)
 {
 
 /*
 *  Is the cache file upto date?
 */
 if($updated)
 {
 
 /*
 *  Yes. Now, let's read from the cache file and output the stored data.
 */
 $endofcache=0;
 for(;!$endofcache;)
 {
 $success=$cache_object->retrievefromcache($data,$endofcache);
 if(!($success))
 break;
 echo $data;
 }
 }
 else
 {
 
 /*
 *  No.  The cache file needs to be regenerated from fresh data.
 *  Let's say that this is all the data I need to store in the cache.
 */
 $data="Hello world! :-)\n";
 
 /*
 *  If necessary, set the cache timeout period in seconds.
 */
 $cachetimeout=60;
 $cache_object->setexpirytime($cachetimeout);
 
 /*
 *  Store the cache data, all at once.
 */
 $success=$cache_object->storedata($data,1);
 
 /*
 *  If it was all ok, let's display the data.
 */
 if($success)
 {
 echo $data;
 }
 }
 }
 }
 }
 
 /*
 *  Finally, let's just do some error handling.
 */
 if(!($success))
 {
 echo ('Error: '.$cache_object->error."\n");
 }
 ?>
 <hr />
 <address>Manuel Lemos (<a href="mailto:[email protected]">[email protected]</a>)</address>
 </body>
 </html>
 
 |