mysql_fetch_field 从结果集中取得列信息并作为对象返回 &mysql.alternative.note; mysqli_fetch_field PDOStatement::getColumnMeta &reftitle.description; objectmysql_fetch_field resourceresult intfield_offset 返回一个包含字段信息的对象。 mysql_fetch_field 可以用来从某个查询结果中取得字段的信息。如果没有指定字段偏移量,则下一个尚未被 mysql_fetch_field 取得的字段被提取。 对象的属性为: name - 列名 table - 该列所在的表名,which is the alias name if one is defined max_length - 该列最大长度 not_null - 1,如果该列不能为 &null; primary_key - 1,如果该列是 primary key unique_key - 1,如果该列是 unique key multiple_key - 1,如果该列是 non-unique key numeric - 1,如果该列是 numeric blob - 1,如果该列是 BLOB type - 该列的类型 unsigned - 1,如果该列是无符号数 zerofill - 1,如果该列是 zero-filled &database.field-case; <function>mysql_fetch_field</function> \n"; $meta = mysql_fetch_field($result); if (!$meta) { echo "No information available
\n"; } echo "
blob:         $meta->blob
max_length:   $meta->max_length
multiple_key: $meta->multiple_key
name:         $meta->name
not_null:     $meta->not_null
numeric:      $meta->numeric
primary_key:  $meta->primary_key
table:        $meta->table
type:         $meta->type
unique_key:   $meta->unique_key
unsigned:     $meta->unsigned
zerofill:     $meta->zerofill
"; $i++; } mysql_free_result($result); ?> ]]>
参见 mysql_field_seek
&reftitle.parameters; &mysql.result.description; field_offset The numerical field offset. If the field offset is not specified, the next field that was not yet retrieved by this function is retrieved. The field_offset starts at 0. &reftitle.returnvalues; Returns an object containing field information. The properties of the object are: name - column name table - name of the table the column belongs to max_length - maximum length of the column not_null - 1 if the column cannot be &null; primary_key - 1 if the column is a primary key unique_key - 1 if the column is a unique key multiple_key - 1 if the column is a non-unique key numeric - 1 if the column is numeric blob - 1 if the column is a BLOB type - the type of the column unsigned - 1 if the column is unsigned zerofill - 1 if the column is zero-filled &reftitle.examples; <function>mysql_fetch_field</function> example \n"; $meta = mysql_fetch_field($result, $i); if (!$meta) { echo "No information available
\n"; } echo "
blob:         $meta->blob
max_length:   $meta->max_length
multiple_key: $meta->multiple_key
name:         $meta->name
not_null:     $meta->not_null
numeric:      $meta->numeric
primary_key:  $meta->primary_key
table:        $meta->table
type:         $meta->type
unique_key:   $meta->unique_key
unsigned:     $meta->unsigned
zerofill:     $meta->zerofill
"; $i++; } mysql_free_result($result); ?> ]]>
&reftitle.notes; &database.field-case; If field or tablenames are aliased in the SQL query the aliased name will be returned. The original name can be retrieved for instance by using mysqli_result::fetch_field. &reftitle.seealso; mysql_field_seek