0
mysql 결과를 캐시하여 데이터베이스 부하를 줄이려고합니다. 캐시 결과 나는 다음과 같은 기능을 사용하여 오전 :연관 배열 배열을 캐시하고 반복하기
$cached = $this->getMemCacheX($name);
if ($cached === false)
{
$res = mysql_query($query, $con) or die(mysql_error());
if ($res === false) exit('Database failure.');
if ($fetch === "assoc")
{
$data = mysql_fetch_assoc($res);
}
else if ($fetch === "array")
{
$data = mysql_fetch_array($res);
}
if (mysql_num_rows($res) === 0) $data = 0;
$cr = $this->saveMemCacheX($name, $data);
if ($cr === false) exit('Cache failure.');
return $data;
}
else
{
return $cached;
}
내 문제는 내가 잠시을 사용하여 반복하는 데 느릅 나무를 통해 결과 집합을 저장하고로드 할 필요가 있다는 것이다 (mysql_fetch_assoc()) - 루프 같은 :
$res = mysql_query("...");
while ($data = mysql_fetch_assoc($res))
{
...
}
이제 결과를 캐시에 저장해야하지만 $ res를 저장할 수 없기 때문에 결과를 먼저 가져와야합니다.
이미 가져온 결과 집합을 반복하는 방법은 무엇입니까? 나는 foreach-Loops를 약간 시도했지만 해결책을 찾지 못했습니다.
데이터베이스 결과에서 연관 배열의 배열을 가져 오려면 어떻게해야합니까?