English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
mysqli_next_result() 함수는 mysqli_multi_query()에 다음 결과 집합을 준비합니다.
mysqli_multi_query() 함수가 실행된 후, 다음 결과 집합을 읽기 위해 준비되고, 그런 다음 mysqli_store_result() 또는 mysqli_use_result() 함수를 사용하여 다음 결과 집합을 읽을 수 있습니다.
mysqli_next_result($con)
순번 | 파라미터 및 설명 |
---|---|
1 | con(필수) MySQL 서버와의 연결을 나타내는 객체입니다. |
결과 집합이 더 많다면 mysqli_next_result() 함수는 true를 반환하며, 결과 집합이 없다면 또는 다음 쿼리에 오류가 있으면 false를 반환합니다.
이 함수는 원래 PHP 버전5중에서 도입되었으며 모든 더 높은 버전에서 사용할 수 있습니다.
다음 예제에서는mysqli_next_result()함수의 사용법(상대적 과정 스타일)-
<?php //연결 설정 $con = mysqli_connect("localhost", "root", "password", "test"); //여러 쿼리 실행 $query = "SELECT * FROM players;SELECT * FROM emp;SELECT * FROM tutorials"; $res = mysqli_multi_query($con, $query); $count = 0; if ($res) { do { $count = $count+1; mysqli_use_result($con); } while (mysqli_next_result($con)); } print("결과 집합 수: ".$count); mysqli_close($con); ?>
출력 결과
결과 집합 수: 3
객체 지향 스타일에서 이 함수의 문법은}}$con-> next_result();。다음은 객체 지향 스타일 함수 예제입니다;
<?php $con = new mysqli("localhost", "root", "password", "test"); //다중 쿼리 $res = $con->multi_query("SELECT * FROM players;SELECT * FROM emp;SELECT * FROM tutorials"); $count = 0; if ($res) { do { $count = $count+1; $con-> use_result(); } while ($con->next_result()); } print("결과 집합 수: ".$count); //연결 종료 $res = $con -> close(); ?>
출력 결과
결과 집합 수: 3
다음 예제는 여러 쿼리의 모든 결과 집합의 레코드를 검색합니다.-
//연결 설정 $con = mysqli_connect("localhost", "root", "password", "test"); //여러 쿼리 실행 $query = "SELECT * FROM players;SELECT * FROM emp"; $res = mysqli_multi_query($con, $query); if ($res) { do { if ($result = mysqli_use_result($con)) { while ($row = mysqli_fetch_row($result)) { print("이름: ".$row[0]."\n"); print("연령: ".$row[1]."\n"); } mysqli_free_result($result); } if (mysqli_more_results($con)) { print("\n"); } } while (mysqli_next_result($con)); } mysqli_close($con);
출력 결과
이름: Dhavan 연령: 33 이름: Rohit 연령: 28 이름: Kohli 연령: 25 이름: Raju 연령: 25 이름: Rahman 연령: 30 이름: Ramani 연령: 22