
mysqli::more_results 함수는 이전 쿼리의 결과를 처리했는지 여부를 확인하는 데 사용되지 않습니다. 이 함수는 mysqli 객체가 더 많은 결과를 반환할 수 있는지 여부를 확인하는 데 사용됩니다.
예를 들어, 여러 쿼리를 실행했을 때, 이전 쿼리의 결과를 모두 처리하지 않았을 때, mysqli::more_results 함수를 사용하여 이전 쿼리가 아직 처리되지 않았는지 확인할 수 없습니다.
mysqli::more_results 함수의 예시 코드는 다음과 같습니다.
#hostingforum.kr
php
$stmt = $mysqli->prepare("SELECT * FROM 테이블1");
$stmt->execute();
$stmt->store_result();
$stmt2 = $mysqli->prepare("SELECT * FROM 테이블2");
$stmt2->execute();
$stmt2->store_result();
echo $mysqli->more_results(); // 결과는 true가 될 것입니다.
이 경우, $mysqli->more_results() 함수는 true를 반환합니다. 이는 mysqli 객체가 더 많은 결과를 반환할 수 있기 때문입니다.
mysqli::more_results 함수를 사용하여 이전 쿼리의 결과를 모두 처리했는지 여부를 확인할 수 있는 방법은 없습니다. 대신, 각 쿼리의 결과를 처리한 후에 mysqli::more_results 함수를 사용하여 다음 쿼리가 아직 처리되지 않았는지 확인할 수 있습니다.
#hostingforum.kr
php
$stmt = $mysqli->prepare("SELECT * FROM 테이블1");
$stmt->execute();
$stmt->store_result();
if (!$stmt->fetch()) {
echo "테이블1의 결과를 모두 처리했습니다.n";
} else {
echo "테이블1의 결과를 모두 처리하지 않았습니다.n";
}
$stmt2 = $mysqli->prepare("SELECT * FROM 테이블2");
$stmt2->execute();
$stmt2->store_result();
if (!$stmt2->fetch()) {
echo "테이블2의 결과를 모두 처리했습니다.n";
} else {
echo "테이블2의 결과를 모두 처리하지 않았습니다.n";
}
echo $mysqli->more_results(); // 결과는 true가 될 것입니다.
이 코드에서는 각 쿼리의 결과를 처리한 후에 mysqli::more_results 함수를 사용하여 다음 쿼리가 아직 처리되지 않았는지 확인합니다.
2025-03-20 23:34