PHP mysqli_fetch_field_direct MySQLi 函数

  • 定义和用法

    mysqli_fetch_field_direct - 获取单个字段的元数据
  • 版本支持

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

    mysqli_fetch_field_direct ( mysqli_result $result , int $fieldnr  )
    
    返回一个对象,其中包含来自指定结果集中的字段定义信息。
  • 参数

    参数 必需的 描述
    result mysqli_query()mysqli_store_result()mysqli_use_result() 返回的结果集标识。
    fieldnr 字段编号。 此值必须在0到字段数-1的范围内。
  • 返回值

    返回一个包含字段定义信息的对象,如果没有指定fieldnr的字段信息可用,则返回FALSE。
    • name 列名
    • orgname 原始列名(如果指定了别名)
    • table 此字段所属的表的名称(如果未计算)
    • orgtable 原始表名(如果已指定别名)
    • def 此字段的默认值,以字符串表示
    • 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 Name LIMIT 5";
    
    if ($result = mysqli_query($link, $query)) {
    
       /* Get field information for column 'SurfaceArea' */
       $finfo = mysqli_fetch_field_direct($result, 1);
    
       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", $finfo->type);
    
       mysqli_free_result($result);
    }
    
    /* close connection */
    mysqli_close($link);
    
  • 相关函数

    mysqli_num_fields() - 获取结果中的字段数
    mysqli_fetch_field() - 返回结果集中的下一个字段
    mysqli_fetch_fields() - 返回表示结果集中字段的对象数组