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

PHP 기본 강의

PHP 고급 강의

PHP & MySQL

PHP 참조 매뉴얼

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

   PHP MySQLi 참조 가이드

mysqli_fetch_field() 함수는 결과 집합의 다음 필드를 반환합니다

정의 및 사용법

PHP 결과 객체(mysqli_result 클래스에 속합니다)는 SELECT 또는 DESCRIBE 또는 EXPLAIN 쿼리로 반환된 MySQL 결과를 나타냅니다.
mysqli_fetch_field 함수의 역할은: 결과 객체를 파라미터로 받아 다음 열을 객체 형태로 반환하는 것입니다./필드 정의 정보

문법

mysqli_fetch_field($result);

파라미터

순번파라미터 및 설명
1

result(必需)

이는 결과 객체를 나타내는 식별자입니다.

반환 값

PHP mysqli_fetch_field() 함수는 주어진 결과에서 필드 정의 정보를 포함하는 객체를 반환합니다. 정보가 없으면 이 함수는 반환FALSE

返回的对象包含以下属性:

  • name - 列名

  • orgname - 原始的列名(如果指定了别名)

  • table - 表名

  • orgtable - 原始的表名(如果指定了别名)

  • def - 保留作为默认值,当前总是为 ""

  • db - 数据库(在 PHP 5.3.6 中新增的)

  • catalog - 目录名称,总是为 "def"(自 PHP 5.3.6 起)

  • max_length - 字段的最大宽度

  • length - 在表定义中指定的字段宽度

  • charsetnr - 字段的字符集号

  • flags - 字段的位标志

  • type - 用于字段的数据类型

  • decimals - 整数字段,小数点后的位数

PHP版本

此函数最初是在PHP版本5中引入的,并且可以在所有更高版本中使用。

온라인 예제

以下示例演示了mysqli_fetch_field()函数的使用(过程式风格)-

<?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($info = mysqli_fetch_field($res)){
      //현재 필드
      $currentfield = mysqli_field_tell($res);
      print("현재 필드: ".$currentfield."\n");
      print("필드 이름: ".$info->name."\n");
      print("필드 타입: ".$info->type."\n");
   }
   //문장을 종료
   mysqli_free_result($res);
   //연결을 닫기
   mysqli_close($con);
?>

출력 결과

테이블 생성.....
데이터 입력.....
현재 필드: 1
필드 이름: ID
필드 타입: 3
현재 필드: 2
필드 이름: First_Name
필드 타입: 253
현재 필드: 3
필드 이름: Last_Name
필드 타입: 253
현재 필드: 4
필드 이름: Place_Of_Birth
필드 타입: 253
현재 필드: 5
필드 이름: Country
필드 타입: 253

온라인 예제

객체 지향 스타일에서 이 함수의 문법은$result-> fetch_field;。이 함수는 객체 지향 스타일에서의 예제입니다;

<?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($info = $result->fetch_field()){
      $field = $result->current_field;
      print("현재 필드: ".$field."\n");
      print("필드 이름: ".$info->name."\n");
   }
   //문장을 종료
   $stmt->close();
   //연결을 닫기
   $con->close();
?>

PHP MySQLi 참조 가이드