PHP Classes
Icontem

File: demo/cache.php


  Search   All class groups All class groups   Latest entries Latest entries   Top 10 charts Top 10 charts   Newsletter Newsletter   Blog Blog   Forums Forums   Help FAQ Help FAQ  
  Login   Register  
Recommend this page to a friend! ReTweet ReTweet Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us
  Classes of David N. Q. Duong  >  XIRE  >  demo/cache.php  
File: demo/cache.php
Role: Example script
Content type: text/plain
Description: Demos Caching
Class: XIRE
Template engine extensible with plug-in classes
 

Contents

Class file image Download
<?php
/***
 * XIRE - eXtendable Information Rendering Engine
 * ----------------------------------------------
 * LICENSE
 * Copyright (C) 2006  David Duong
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 */
// Include the Template class
require_once '../lib/CacheTemplate.class.php';

// Instantiate a template object
$cache = new XIRE_CacheTemplate('index.tpl');

// The following three lines are optional, but you probably will want to make use of them
$cache->lifetime 3600;    // Set to consider caches older than 3600 secs (1 hour) expired
$cache->name 'index';     // The cache filename will be based on this value
$cache->key 'key';        // The cache will be saved to a folder whose name is based
                            //  on the above value, and the cache filename will be based on 
                            //  this value

// Check to see if an up-to-date cache exists, if so then there is no need to generate
//  and push information onto the template
// Otherwise, push data onto the template
if (!$cache->exists()) {
    
// This demos two ways to do the same thing (see demo/index.php)
    
$cache->template->set('variable''test variable');
    
$cache->template->set('true'true);
    
$cache->template['var'] = array('x''y''z');
    
$cache->template['false'] = false;
}

// Inefficient method, see below. Load the cache into the template's output document.
$cache->load();
// Finally, output the results
header('content-type: text/xml');
echo 
$cache->template->getXML(true);

/* It would be even better if $cache->getFile() is used instead to get the cache's filename 
for you to parse into a URL redirection. This method would make use of any client-side 
caching and eliminate the overhead of loading and parsing the cache file.

IMPORTANT NOTE: Make sure that you keep caches that may have sensitive information in a 
non-www accessible location (see documentation on how to have caches stored in several 
different locations)

Pseudo alternate method:
$url = yourPathToURLFunction($cache->getFile());
header("Location: $url");
*/
?>

 
  Advertise on this site Advertise on this site   Site map Site map   Statistics Statistics   Site tips Site tips   Privacy policy Privacy policy   Contact Contact  

For more information send a message to :
info at phpclasses dot org.
Copyright (c) Icontem 1999-2009 PHP Classes - PHP Class Scripts
  PHP Book Reviews - Reviews of books and other products