English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

PHP 기본 강의

PHP 고급 강의

PHP & MySQL

PHP 참조 매뉴얼

PHP mysqli_stmt_bind_result() 함수 사용법 및 예제

PHP MySQLi 참조 매뉴얼

mysqli_stmt_bind_result() 함수는 변수를 예제 문장에 바인딩하여 결과를 저장합니다

정의 및 사용법

mysqli_stmt_bind_result()함수는 결과 집합의 열을 변수에 바인딩하는 데 사용됩니다. 바인딩된 변수 후에, 호출해야 합니다 mysqli_stmt_fetch() 함수는 지정된 변수의 열 값을 가져오기 위해 사용됩니다.

문법

mysqli_stmt_bind_result($stmt, $var1, $var2...);

파라미터

순번파라미터 및 설명
1

stmt(必需)

이는 준비된 문장 객체를 나타냅니다.

2

var1(必需)

이는 열에 바인딩할 변수를 나타냅니다.

반환 값

PHP mysqli_stmt_bind_result() 함수는 성공 시 boolean 값을 반환합니다.true이 실패 시false.

PHP 버전

이 함수는 초기에는 PHP 버전5에서 도입되었으며 모든 더 높은 버전에서 사용할 수 있습니다.

온라인 예제

다음 예제에서는mysqli_stmt_bind_result()함수의 사용법(과정 방식), 결과를 변수에 바인딩:

<?php
   $con \u003D mysqli_connect("localhost", \"root\", \"password\", \"mydb\"));
   mysqli_query($con, \"CREATE \u00A0TABLE \u00A0myplayers(ID \u00A0INT, \u00A0First_Name \u00A0VARCHAR(255), \u6700\u540E\u540D \u00A0VARCHAR(255), \u751F\u6237\u5730\u70B9 \u00A0VARCHAR(255), \u5907\u56FD \u00A0VARCHAR(255))\
   print("\u521B\u5EFA\u8868\u2026\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");
   //检索表的内容
   $stmt = mysqli_prepare($con, "SELECT * FROM myplayers");
   //문장 실행
   mysqli_stmt_execute($stmt);
   //결과 값이 변수에 바인딩됩니다
   mysqli_stmt_bind_result($stmt, $id, $fname, $lname, $pob, $country);
   while (mysqli_stmt_fetch($stmt)) {
      print("Id: ".$id."\n");
      print("fname: ".$fname."\n");
      print("lname: ".$lname."\n");
      print("pob: ".$pob."\n");
      print("country: ".$country."\n");
      print("\n");
   }
   //문장 종료
   mysqli_stmt_close($stmt);
   //연결 닫기
   mysqli_close($con);
?>

출력 결과

테이블 생성.....
插入记录.....
Id: 1
fname: Sikhar
lname: Dhawan
pob: Delhi
country: India
Id: 2
fname: Jonathan
lname: Trott
pob: CapeTown
country: SouthAfrica
Id: 3
fname: Kumara
lname: Sangakkara
pob: Matale
country: Srilanka

온라인 예제

在面向对象风格中,此函数的语法为$stmt-> bind_result();。以下是面向对象风格中此函数的示例,将变量绑定到结果集:

<?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("\u521B\u5EFA\u8868\u2026\n");
   $stmt = $con -> prepare("SELECT * FROM Test WHERE Name in(?, ?);
   $stmt -> \u00A0bind_param("ss", \u00A0$name1, \u00A0$name2);
   $name1 = \"Raju\";
   $name2 = \"Rahman\";
   print("Records \u00A0Deleted.....\n");
   //문장 실행
   $stmt->execute();
   //将变量绑定到结果集
   $stmt->bind_result($name, \u00A0$age);
   while \($stmt->fetch()) \{
      print("Name: \u00A0\u00A0\u00A0".$name."\n");
      print("Age: \u00A0\u00A0\u00A0".$age."\n");
   }
   //문장 종료
   $stmt->close();
   //연결 닫기
   $con->close();
?>

출력 결과

테이블 생성.....
Records \u00A0Deleted.....
Name: \u00A0Raju
Age: 25
Name: \u00A0Rahman
Age: 30

온라인 예제

以下示例使用 mysqli_stmt_bind_result() 和 mysqli_stmt_fetch() 函数获取DESCRIBE查询的结果,并将结果中的值绑定到变量:

<?php
   $con \u003D mysqli_connect("localhost", \"root\", \"password\", \"mydb\"));
   mysqli_query($con, \"CREATE \u00A0TABLE \u00A0myplayers(ID \u00A0INT, \u00A0First_Name \u00A0VARCHAR(255), \u6700\u540E\u540D \u00A0VARCHAR(255), \u751F\u6237\u5730\u70B9 \u00A0VARCHAR(255), \u5907\u56FD \u00A0VARCHAR(255))\
   print("\u521B\u5EFA\u8868\u2026\n");
   //Description \u00A0of \u00A0the \u00A0table
   $stmt \u003D mysqli_prepare($con, \"DESC \u00A0myplayers\");
   //문장 실행
   mysqli_stmt_execute($stmt);
   //결과 값이 변수에 바인딩됩니다
   mysqli_stmt_bind_result($stmt, \u00A0\u00A0\u00A0$field, \u00A0\u00A0\u00A0$type, \u00A0\u00A0\u00A0$null, \u00A0\u00A0\u00A0$key, \u00A0\u00A0\u00A0$default, \u00A0\u00A0\u00A0$extra);
   while (mysqli_stmt_fetch($stmt)) {
      print("Field: \u00A0\u00A0\u00A0".$field."\n");
      print("Type: \u00A0\u00A0\u00A0".$type."\n");
      print("Null: \u00A0\u00A0\u00A0".$null."\n");
      print("Key: \u00A0\u00A0\u00A0".$key."\n");
      print("Default: \u00A0\u00A0\u00A0".$default."\n");
      print("Extra: \u00A0\u00A0\u00A0".$extra."\n");
      print("\n");
   }
   //문장 종료
   mysqli_stmt_close($stmt);
   //연결 닫기
   mysqli_close($con);
?>

출력 결과

테이블 생성.....
필드: ID
형식: int(11)
Null: YES
키:
기본 설정:
추가 정보:
필드: First_Name
형식: varchar(255)
Null: YES
키:
기본 설정:
추가 정보:
필드: Last_Name
형식: varchar(255)
Null: YES
키:
기본 설정:
추가 정보:
필드: Place_Of_Birth
형식: varchar(255)
Null: YES
키:
기본 설정:
추가 정보:
필드: Country
형식: varchar(255)
Null: YES
키:
기본 설정:
추가 정보:

온라인 예제

아래 예제는 mysqli_stmt_bind_result()와 mysqli_stmt_fetch() 함수를 사용하여 SHOW TABLES 쿼리 결과를 가져와 데이터베이스에 있는 모든 테이블을 나열합니다:

<?php
   $con = mysqli_connect("localhost", "root", "password");
   //데이터베이스 선택
   mysqli_query($con, "CREATE DATABASE NewDatabase");
   mysqli_select_db($con, "NewDatabase");
   //테이블 생성
   mysqli_query($con, "CREATE TABLE test1(Name VARCHAR(255), Age INT)");
   mysqli_query($con, "CREATE TABLE test2(Name VARCHAR(255), Age INT)");
   mysqli_query($con, "CREATE TABLE test3(Name VARCHAR(255), Age INT)");
   print("Tables Created.....\n");
   //테이블 설명
   $stmt = mysqli_prepare($con, "SHOW TABLES");
   //문장 실행
   mysqli_stmt_execute($stmt);
   //결과 값이 변수에 바인딩됩니다
   mysqli_stmt_bind_result($stmt, $table_name);
   print("현재 데이터베이스에 있는 모든 테이블은 다음과 같습니다: \n");
   while (mysqli_stmt_fetch($stmt)) {
      print($table_name."\n");
   }
   //문장 종료
   mysqli_stmt_close($stmt);
   //연결 닫기
   mysqli_close($con);
?>

출력 결과

Tables Created.....
현재 데이터베이스에 있는 모든 테이블은 다음과 같습니다:
test1
test2
test3

PHP MySQLi 참조 매뉴얼