仅作记录,我使用的是带有 XAMPP (PHP 5.3.1) 的 Windows Vista。
我正在尝试使用 APC 来缓存数据库结果。我对字符串变量做了一个简单的 APC 测试,它似乎工作正常。但是,当我尝试对数据库结果资源执行相同操作时,每当我想使用缓存中的数据“不是有效的 MySQL 结果资源”时,我都会收到投诉。
这是我的代码:
$key_hash_str = md5($query_sql_str);
$cache_res = Mox_Cache_APC::fetch($key_hash_str);;
switch(true)
{
case (!$cache_res):
$query_result_res = self::executeQuery($query_sql_str);
Mox_Cache_APC::store($key_hash_str, $query_result_res);
return $query_result_res;
break;
default:
return $cache_res;
}
Mox_Cache_APC 是我的 APC 类,而 fetch 和 store 只是 apc_fetch() 和 apc_store() 的抽象。executeQuery 是在编写此代码的类中定义的静态函数(很明显,用于执行查询)。
难道我做错了什么?在缓存结果集之前我需要对结果集做些什么吗?
好心提醒。