キャッシュ スクリプトを使用する場合、画像を保存するキャッシュ ファイル名を指定する必要があります。また、キャッシュの存続期間を設定するタイムアウト値を指定することもできます。
これらの引数は、最初に呼び出す Graph() メソッドにて手渡します。手動で使用するファイル名を指定するのではなく、auto と指定するとスクリプト名を使用できます。auto が指定された場合、キャッシュ ファイル名はスクリプト名と同じ名前を持ち、適切な拡張子が付加されます。
ファイル名を指定しない場合、USE_CACHE 定数を true にしている、いないに関係なく、キャッシュ機能は働きません。
以下に、キャッシュを有効にするサンプルを掲載します。
$graph = new Graph(300,200,"auto",60);
上記のコードでは、自動でキャッシュ ファイル名を設定し、60 分間のタイムアウト値を設定しています。
そこで、これらすべてはどう作動するのでしょうか。
スクリプトが最初に呼び出された際には、スクリプト全体が実行され、生成された画像がブラウザに転送されます。そして、キャッシュ機能が有効な場合は、画像がキャッシュ ディレクトリに転送されます。
次にスクリプトを呼び出した際には、キャッシュ ディレクトリにキャッシュ ファイルが既に存在するかどうかを確認します。その場合、画像が古すぎないかどうか、指定されたタイムアウト値で確認されます。タイムアウト値よりも新しい場合は、スクリプトを実行するのではなく、画像ファイルからブラウザへと直接転送されます。
そのため、キャッシュ ディレクトリ内に画像が見つかった場合、最初の Graph() メソッドの呼び出し以後スクリプトは実行されません。
この設計は、キャッシュを使用する場合、それ以外の動作を行わないようにするために必要です。これらはすべて自動的に行われます。.