English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
mysqli_fetch_assoc() 함수는 결과 집합에서 결과 행을 연관 배열로 가져옵니다.
PHP 결과 객체(mysqli_result 클래스)는 SELECT나 DESCRIBE나 EXPLAIN 쿼리로 반환된 MySQL 결과를 나타냅니다.
mysqli_fetch_assoc 함수의 역할은: 파라미터로 결과 객체를 받아, 주어진 결과 객체의 현재 행의 내용을 검색하여 연관 배열이나数值 배열로 반환하는 것입니다.
mysqli_fetch_assoc($result);
순번 | 파라미터 및 설명 |
---|---|
1 | result(必需) 이는 결과 객체를 나타내는 식별자입니다. |
PHP mysqli_fetch_assoc() 함수는 결과 객체의 현재 행을 포함한 연관 배열을 반환합니다. 더 이상 행이 없으면 이 함수는 NULL을 반환합니다.
此函数最初是在PHP版本5中引入的,并且可以在所有更高版本中使用。
以下示例演示了mysqli_fetch_assoc()函数的用法(面向过程风格),从结果集中取得行作为关联数组:
<?php $con = mysqli_connect("localhost", "root", "password", "mydb"); mysqli_query($con, "CREATE TABLE myplayers(ID INT, First_Name VARCHAR(255), Last_Name VARCHAR(255), Place_Of_Birth VARCHAR(255), Country VARCHAR(255))"); print("테이블 생성.....\n"); mysqli_query($con, "INSERT INTO myplayers values(1, 'Sikhar', 'Dhawan', 'Delhi', 'India')"); mysqli_query($con, "INSERT INTO myplayers values(2, 'Jonathan', 'Trott', 'CapeTown', 'SouthAfrica')"); mysqli_query($con, "INSERT INTO myplayers values(3, 'Kumara', 'Sangakkara', 'Matale', 'Srilanka')"); print("插入记录.....\n"); //检索表的内容 $res = mysqli_query($con, "SELECT * FROM myplayers"); //获取所有行作为对象 while($obj = mysqli_fetch_assoc($res)){ print("ID: ".$obj["ID"]."\n"); print("First_Name: ".$obj["First_Name"]."\n"); print("Last_Name: ".$obj["Last_Name"]."\n"); print("Place_Of_Birth: ".$obj["Place_Of_Birth"]."\n"); print("Country: ".$obj["Country"]."\n"); } //문장 종료 mysqli_free_result($res); //연결을 닫기 mysqli_close($con); ?>
출력 결과
테이블 생성..... 插入记录..... ID: 1 First_Name: Sikhar 성: Dhawan 출생지: Delhi 국가: India ID: 2 이름: Jonathan 성: Trott 출생지: CapeTown 국가: SouthAfrica ID: 3 이름: Kumara 성: Sangakkara 출생지: Matale 국가: Srilanka
객체 지향 스타일에서 이 함수의 문법은 다음과 같습니다$result->fetch_assoc();.아래는 이 함수에 대한 객체 지향 스타일 예제입니다;
<?php //연결 설정 $con = new mysqli("localhost", "root", "password", "mydb"); $con -> query("CREATE TABLE Test(Name VARCHAR(255), Age INT"); $con -> query("insert into Test values('Raju', 25),('Rahman', 30),('Sarmista', 27); print("테이블 생성.....\n"); $stmt = $con -> prepare( "SELECT * FROM Test WHERE Name in(?, ?)"); $stmt -> bind_param("ss", $name1, $name2); $name1 = 'Raju'; $name2 = 'Rahman'; //문장 실행 $stmt->execute()); //검색 결과 $result = $stmt->get_result()); //모든 행을 배열로 가져오기 while($obj = $result->fetch_assoc()); print("이름: ".$obj["Name"]."\n"); print("연령: ".$obj["Age"]."\n"); } //문장 종료 $stmt->close(); //연결을 닫기 $con->close(); ?>
출력 결과
테이블 생성..... 이름: Raju 연령: 25 이름: Rahman 연령: 30