我已经找到了一种缓存数据的方法(这样我就不必在之前已经获取相同的数据时重新访问数据库了),并且我通过在函数内部使用静态变量来实现:
function get_user( $id, $flush=false ){
static $cache;
if ( isset($cache[$id]) && !$flush )
return $cache[$id];
// Do something here to get user information
$user_info = $value;
// Return value after storing data into cache
return $cache[$id] = $user_info;
}
我不确定这是一个好主意还是有更好的方法来进行缓存.这是一个好方法吗?如果没有,那么有哪些缺点呢?
最佳答案 看看
here.描述了几种解决方案.缓存的类型取决于您需要缓存数据的时间.静态变量不在PHP进程之间共享,只能在很短的时间内缓存 – 跨越脚本执行生命周期.