Php/docs/mysqli-result.fetch-field

来自菜鸟教程
跳转至:导航、​搜索

mysqli_result::fetch_field

mysqli_fetch_field

(PHP 5, PHP 7)

mysqli_result::fetch_field -- mysqli_fetch_fieldReturns the next field in the result set


说明

面向对象风格

public mysqli_result::fetch_field ( ) : object

过程化风格

mysqli_fetch_field ( mysqli_result $result ) : object

Returns the definition of one column of a result set as an object. Call this function repeatedly to retrieve information about all columns in the result set.


参数

result
仅以过程化样式:由 mysqli_query()mysqli_store_result()mysqli_use_result()返回的结果集标识。


返回值

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

Object properties
Property Description
name The name of the column
orgname Original column name if an alias was specified
table The name of the table this field belongs to (if not calculated)
orgtable Original table name if an alias was specified
def Reserved for default value, currently always ""
db Database (since PHP 5.3.6)
catalog The catalog name, always "def" (since PHP 5.3.6)
max_length The maximum width of the field for the result set.
length The width of the field, as specified in the table definition.
charsetnr The character set number for the field.
flags An integer representing the bit-flags for the field.
type The data type used for this field
decimals The number of decimals used (for integer fields)


范例

Example #1 面向对象风格

<?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();?>

Example #2 过程化风格

<?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);?>

以上例程会输出:


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

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

参见