这听起来像你希望是这样的。
然而,你不应该缓存响应,你应该从响应中捕获数据(行)。否则,你会遇到指针问题和其他问题。相反,请在结果行上进行任何数据转换,并以类似的方式存储它们。
private $_response_cache = null;
public function getResponse($connection)
{
if (is_null($this->_response_cache))
{
$query="select * from test order by date DSC";
$this->_response_cache = $connection ->query($query); //fetch all the data from query
}
return $this->_response_cache;
}
如果你需要静态,这里...但更警告。静态代码在构造函数之外是有问题的,应谨慎使用。它与单元测试相结合,可能会造成奇怪的副作用 - 有一所大学建议不要使用它,尽管我没有订阅该学校,但我确实意识到使用不当会很容易而且很危险。
private static $_response_cache = null;
public function getResponse($connection)
{
if (is_null(self::$_response_cache))
{
$query="select * from test order by date DSC";
self::$_response_cache = $connection ->query($query); //fetch all the data from query
}
return self::$_response_cache;
}
你不能称它为5-6次?缓存结果相当简单,那么你究竟在问什么? –
从哪里调用这个函数?从内部的PHP或AJAX? – niyou
您已经回答了您自己的问题:-) – jeroen