wordpressでのphpプログラムでキャッシュが生成されないのぉぉぉぉおおおおお!!

pearを複数投入して簡単なwordpress上で動作するアマゾン商品一覧が出るプログラムを組んでいたのだけれど、どうしてもキャッシュが生成されない。

Manual :: Cache_Lite
WordPress で PHP で簡単にキャッシュファイルを作れる PEAR::Cache_Lite を使ってパフォーマンスを向上させてみた | ウェブル

この他いくつか参考にして簡単なプログラムを組んでみてもまったくファイルが生成されない。php単体では正常にどうさするが、wordpress上でやるとどうしてもダメ。なにか方法があるのかもしれないがお手上げでした。

正確には生成されているようなのだけれど、メモリ上かどこかに作っているいのか実体ファイルがいくらさがしても見つからない。

ディレクトリの指定も間違ってないはずなんや!! ふじこふじこ!!

PHP による Amazon PAAPI の毎秒ルール制限の実装とキャッシュの構築例 | さくらたんどっとびーず
今回はこの方針で実装した簡単なライブラリを用意してみました。これを組み込んで頂くのはそんなに難しくないと思いますが、ライブラリが動くかお手元の環境でチェックしていただかないといけませんので、ちと記事の …

で、その後も色々と探っていると、とあるプラグインで何だかcheckpoint.phpというファイルが動作していてそれがなにやら良い感じでディレクトリにキャッシュを作る手助け的なことをしていて検索して見ると発見。

参考になりましたありごとうございます。

なんだか直列とかロックとかいう事が必要になる様子。あまりまだ理解しきれてないけれどキャッシュの扱いができましたっす。

<?php

require_once 'Cache_Lite_Checkpoint.php';

$cache = new Cache_Lite_Checkpoint(array(
    'cacheDir' => 'tmp/',
    'lifeTime' => 3600,
    'checkpointLockfile' => '/home/xxx/run/paapi',
    'checkpointInterval' => 1
));

$id = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING']))
    $id .= '?' . $_SERVER['QUERY_STRING'];

if (!$cache->start($id)) {

    // PAAPI の呼び出し

    // API データの出力

    $cache->end();
}

?>

PHP による Amazon PAAPI の毎秒ルール制限の実装とキャッシュの構築例 | さくらたんどっとびーず 様より
動作しました。ありがとうございました。