mysql_free_result($result) 는 어떤 경우에 사용하는지요? > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

mysql_free_result($result) 는 어떤 경우에 사용하는지요? 정보

mysql_free_result($result) 는 어떤 경우에 사용하는지요?

본문

 $result = sql_query($sql);
 ....
 sql_free_result($result)
 
어떤 경우는 sql_free_result문장을 사용하고
 
또 어떤 경우는 sql_free_result를 사용 하지 않고 있습니다.
 
명확한 구분이 있는 것인지요?
 
답변 부탁 드립니다.
 
감사합니다.
 
 
 
 
  • 복사

댓글 전체

common.lib.php 에서
mysql_free_result($result);
를 sql_free_result 함수로 만든 것 입니다.

// $result에 대한 메모리(memory)에 있는 내용을 모두 제거한다.
// sql_free_result()는 결과로부터 얻은 질의 값이 커서 많은 메모리를 사용할 염려가 있을 때 사용된다.
// 단, 결과 값은 스크립트(script) 실행부가 종료되면서 메모리에서 자동적으로 지워진다.
function sql_free_result($result)
{
  return mysql_free_result($result);
}

어떤 변수가 있을때 global 로 선언이 되었다면
그 변수는 head.php 에 의하여 여기저기서 쓸수가 있을 것 입니다.
예를 든다면 쿼리했던 결과인 $result 값을 
패치하여 $list 라는 변수에 저장했을때 $list[0] ~ 쭉 들어가겠죠.

get_list 같은 함수는 실행초기에 $list=""; 으로 지워주지만
중복쿼리시에는 지울수 없는 경우가 있습니다.
원글의 제목만 넣은 경우가 있고
아니면 코맨트에 해당하는 원글의 제목이 올수도 있는데
여기서 코맨트라고 해서 $list를 지우면 날라가게 됩니다.

이처럼 저장할장소를 지우지 않고 또 한번의 쿼리를 하려고
일시적으로 바가지를 비우는 값 즉 $result 값을 reset 해주는 것 입니다.
© SIRSOFT
현재 페이지 제일 처음으로