PHP mysqli_fetch_field MySQLi 函数

  • 定义和用法

    mysqli_fetch_field - 返回结果集中的下一个字段
  • 版本支持

    PHP4 PHP5 PHP7
    不支持 支持 支持
  • 语法

    mysqli_fetch_field ( mysqli_result $result )
    
    返回结果集的一列的定义作为一个对象。 重复调用此函数以检索有关结果集中所有列的信息。
  • 参数

    参数 必需的 描述
    result mysqli_query()mysqli_store_result()mysqli_use_result() 返回的结果集标识。
  • 返回值

    返回一个包含字段定义信息的对象;如果没有可用的字段信息,则返回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
    $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);
    
  • 相关函数

    mysqli_num_fields() - 获取结果中的字段数
    mysqli_fetch_field_direct() - 获取单个字段的元数据
    mysqli_fetch_fields() - 返回表示结果集中字段的对象数组
    mysqli_field_seek() - 将结果指针设置为指定的字段偏移量