PHP mysqli fetch_field_direct() Function

❮ PHP MySQLi Reference

Example - Object Oriented style

Return meta-data for a single field in the result-set, then print the field's name, table, and max length:

<?php
$mysqli = new mysqli("localhost","my_user","my_password","my_db");

if ($mysqli -> connect_errno) {
  echo "Failed to connect to MySQL: " . $mysqli -> connect_error;
  exit();
}

$sql = "SELECT Lastname, Age FROM Persons ORDER BY Lastname";

if ($result = $mysqli -> query($sql)) {

  // Get field information for column "Age"
  $fieldinfo = $result -> fetch_field_direct(1);

  printf("Name: %s\n", $fieldinfo -> name);
  printf("Table: %s\n", $fieldinfo -> table);
  printf("Max. Len: %d\n", $fieldinfo -> max_length);
  $result -> free_result();
}

$mysqli -> close();
?>

Look at example of procedural style at the bottom.


Definition and Usage

The fetch_field_direct() / mysqli_fetch_field_direct() function returns meta-data for a single field in a result-set, as an object.


Syntax

Object oriented style:

$mysqli_result -> fetch_field_direct(fieldnr)

Procedural style:

mysqli_fetch_field_direct(result, fieldnr)

Parameter Values

Parameter Description
result Required. Specifies a result set identifier returned by mysqli_query(), mysqli_store_result() or mysqli_use_result()
fieldnr Required. Specifies the field number. Must be an integer from 0 to number of fields-1

Technical Details

Return Value: Returns an object containing field definition information. FALSE if no info is available. The object has the following properties:
  • name - name of the column
  • orgname - original column name (if an alias is specified)
  • table - name of table
  • orgtable - original table name (if an alias is specified)
  • def - default value for this field
  • max_length - maximum width of field
  • length - width of field as specified in table definition
  • charsetnr - character set number for the field
  • flags - bit-flags for the field
  • type - data type used for the field
  • decimals - for integer fields; the number of decimals used
PHP Version: 5+

Example - Procedural style

Return meta-data for a single field in the result-set, then print the field's name, table, and max length:

<?php
$con = mysqli_connect("localhost","my_user","my_password","my_db");

if (mysqli_connect_errno()) {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  exit();
}

$sql = "SELECT Lastname, Age FROM Persons ORDER BY Lastname";

if ($result = mysqli_query($con, $sql)) {

  // Get field information for column "Age"
  $fieldinfo = mysqli_fetch_field_direct($result, 1);

  printf("Name: %s\n", $fieldinfo -> name);
  printf("Table: %s\n", $fieldinfo -> table);
  printf("Max. Len: %d\n", $fieldinfo -> max_length);

  mysqli_free_result($result);
}

mysqli_close($con);
?>


❮ PHP MySQLi Reference
Copyright 1999-2023 by Refsnes Data. All Rights Reserved.