先向大家介绍一下mysql_fetch_field函数的基本知识

 

mysql_fetch_field介绍

mysql_fetch_field — 从结果集中取得列信息并作为对象返回 

语法:

  mysql_fetch_field ( resource $result [, int $field_offset ] )

返回一个包含字段信息的对象。 

mysql_fetch_field() 可以用来从某个查询结果中取得字段的信息。如果没有指定字段偏移量,则下一个尚未被 mysql_fetch_field() 取得的字段被提取。 

对象的属性为: 

  1. name - 列名 
  2. table - 该列所在的表名 
  3. max_length - 该列最大长度 
  4. not_null - 1,如果该列不能为 NULL 
  5. primary_key - 1,如果该列是 primary key 
  6. unique_key - 1,如果该列是 unique key 
  7. multiple_key - 1,如果该列是 non-unique key 
  8. numeric - 1,如果该列是 numeric 
  9. blob - 1,如果该列是 BLOB 
  10. type - 该列的类型 
  11. unsigned - 1,如果该列是无符号数 
  12. zerofill - 1,如果该列是 zero-filled 
     

mysql_fetch_field获取表字段信息

本示例中需要使用的表信息,表字段信息如下图所示:

\"php使用mysql_fetch_field获取数据库表的字段信息\"

下面我们使用mysql_fetch_field函数获取表字段信息,代码如下:

<?php
   mysql_connect(\"localhost\",\"root\",\"\");
   mysql_select_db(\"test\");
   $query = \"SELECT * FROM student LIMIT 1\";
   $result = mysql_query($query);
   $fields = mysql_num_fields($result);
   /* http://www.manongjc.com/article/1224.html */
   for($count=0;$count<$fields;$count++)
   {
      $field = mysql_fetch_field($result,$count);
      echo \"<p>$field->name $field->type ($field->max_length)</p>\";
   }
?>

输出结果:

student_id int (1)

student_name string (5)

class_id int (1)

total_score int (3)

上面分别获取到每个字段的名称和字段类型以及长度。

收藏 打印