以下を使用して、データベースからオブジェクトを生成しています。
$game = $this->game_model->get_by('slug', 'some-title');
また、Codeigniter でキャッシュ ライブラリを使用しており、次の方法でキャッシュ ファイルに書き込みます。
$this->cache->write($game, $cache);
ここで、$game はオブジェクトで、$cache はそのオブジェクトの識別子です。
このオブジェクトの一意の ID を生成して、キャッシュ名として使用したいと考えています。spl_object_hashのようなものですが、後続のインスタンス間で同じままです。
たとえば、次のようにします。
$cache = spl_object_hash($game);
// Cache object
$this->cache->write($game, $cache);
一意の ID として生成さ000000006c5ce27300000000564a8706.cache
れますが、ページをリロードすると別の ID が取得され、キャッシュの目的が無効になります。
オブジェクトの一貫した一意の ID を取得するにはどうすればよいですか?