<?php
/*
* $Id: use_get_example1.php,v 1.1 2000/07/31 14:05:10 jesus Exp $
*/
// call this script: get_example1.php?title=Cool+Script
// based on the example using the FastTemplate class
// demonstrates the use of the use_get() method to append
// the GET query string to the named of the cached document
require "./class.FastTemplate.php3";
require "./class.FastTemplateAdaptor.php";
require "./class.CachedTemplate.php";
echo "<hr>QUERY_STRING: ".$GLOBALS["QUERY_STRING"]."<hr>";
$ftpl = new CachedTemplate();
$ftpl->init("./templates");
// use the QUERY_STRING in the cached filename
$ftpl->use_get();
// for benchmarking
$start = $ftpl->utime();
// the templates are distributed w/FastTemplate
// we need this definition first, so the caching logic can
// detect if the templates have changed.
$ftpl->define(
array(
main => "main.tpl",
table => "table.tpl",
row => "row.tpl"
)
);
// Check if we can send the cached file
if ($ftpl->valid_cache_file()) {
echo "<B>FROM CACHE</B>\n<BR>";
$ftpl->read_from_cache();
$end = $ftpl->utime();
$runtime = ($end - $start) * 1000;
echo "Completed in $runtime miliseconds<BR>\n";
exit;
}
// Otherwise process the page,
// using the gtitle var passed as a GET query string
$ftpl->assign( array( TITLE => $gtitle) );
for ($n=1; $n <= 3; $n++)
{
$Number = $n;
$BigNum = $n*10;
$ftpl->assign(
array(
NUMBER => $Number,
BIG_NUMBER => $BigNum
)
);
$ftpl->parse(ROWS,".row");
}
$ftpl->parse(MAIN, array("table","main"));
// get parsed document
$data = $ftpl->getParsedDoc();
echo $data;
// for benchmarking
$end = $ftpl->utime();
$runtime = ($end - $start) * 1000;
echo "Completed in $runtime miliseconds<BR>\n";
// we write the file at the end so this
// operation will not be counted in the benchmark
$ftpl->write_to_cache($data);
?>
|