mysqli_fetch_field

(PHP 5 CVS only)

mysqli_fetch_field

(no version information, might be only in CVS)

result->fetch_field -- Returns the next field in the result set

Description

Procedural style:

mixed mysqli_fetch_field ( object result)

Object oriented style (method):

class result {

mixed fetch_field ( void )

}

The mysqli_fetch_field() function is used to return the attributes of the next column in the result set represented by the result parameter as an object. When executed this function will return an object containing the attributes of the current column or FALSE if there are no more columns in the result set.

Return values

Returns an object which contains field definition informations or FALSE if no field information is available.

表格 1. Object attributes

AttributeDescription
nameThe name of the column
orgnameOriginal column name if an alias was specified
tableThe name of the table this field belongs to (if not calculated)
orgtableOriginal table name if an alias was specified
defThe default value for this field, represented as a string
max_lengthThe maximum width of the field for the result set.
flagsAn integer representing the bit-flags for the field.
typeThe data type used for this field
decimalsThe number of decimals used (for integer fields)

Example

例子 1. Object oriented style

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

/* check connection */
if (mysqli_connect_errno()) {
    
printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";

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

    
/* Get field information for all columns */
    
while ($finfo = $result->fetch_field()) {

        
printf("Name:     %s\n", $finfo->name);
        
printf("Table:    %s\n", $finfo->table);
        
printf("max. Len: %d\n", $finfo->max_length);
        
printf("Flags:    %d\n", $finfo->flags);
        
printf("Type:     %d\n\n", $finfo->type);
    }    
    
$result->close();
}

/* close connection */
$mysqli->close();
?>

例子 2. Procedural style

<?php
$link
= mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    
printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";

if (
$result = mysqli_query($link, $query)) {

    
/* Get field information for all fields */
    
while ($finfo = mysqli_fetch_field($result)) {

        
printf("Name:     %s\n", $finfo->name);
        
printf("Table:    %s\n", $finfo->table);
        
printf("max. Len: %d\n", $finfo->max_length);
        
printf("Flags:    %d\n", $finfo->flags);
        
printf("Type:     %d\n\n", $finfo->type);
    }
    
mysqli_free_result($result);
}

/* close connection */
mysqli_close($link);
?>

The above examples would produce the following output:

Name:     Name
Table:    Country
max. Len: 11
Flags:    1
Type:     254

Name:     SurfaceArea
Table:    Country
max. Len: 10
Flags:    32769
Type:     4