Skip to content

fetch_field

In this article, we will focus on the mysqli_fetch_field() function in PHP, which is used to fetch metadata for the next column in a result set sequentially. We will provide you with an overview of the function, how it works, and examples of its use.

Introduction to the mysqli_fetch_field() function

The mysqli_fetch_field() function is a built-in function in PHP that is used to fetch metadata for a single column from a MySQLi result set. This function is useful when you need to obtain information about a specific column in a MySQLi query result set.

How to use the mysqli_fetch_field() function

Using the mysqli_fetch_field() function is straightforward. You call it on a valid MySQLi result set to retrieve metadata for the next column sequentially. Here is an example:

How to use the mysqli_fetch_field() function?

php
<?php
$mysqli = new mysqli("localhost", "username", "password", "database");

if ($mysqli->connect_error) {
    die("Connection failed: " . $mysqli->connect_error);
}

$query = "SELECT * FROM my_table";
$result = $mysqli->query($query);

if ($result) {
    while ($field = $result->fetch_field()) {
        printf("Name: %s\n", $field->name);
        printf("Type: %s\n", $field->type);
        printf("Length: %d\n", $field->length);
    }
} else {
    echo "Query failed: " . $mysqli->error;
}

$result->free();
$mysqli->close();
?>

In this example, we create a new mysqli object to connect to the database and check for connection errors before proceeding. We execute a query using $mysqli->query() and store the result. If the query succeeds, we use a while loop to iterate through the columns. Each call to fetch_field() retrieves metadata for the next column in the result set as an object. The returned object contains properties like name (column name), type (data type), length (maximum length), table (table name), orgname (original column name), and flags (column flags). We output the name, type, and length.

Note that if you need metadata for all columns at once, mysqli_fetch_fields() is a more efficient alternative.

Conclusion

In conclusion, the mysqli_fetch_field() function is a useful tool for obtaining metadata about a specific column in a MySQLi query result set. By understanding how to use the function, you can take advantage of this feature to create powerful and flexible MySQLi queries.

Practice

What does the fetch_field() function in PHP do?

Do you find this helpful?

Dual-run preview — compare with live Symfony routes.