mysql_fetch_field() 函数从结果集中取得列信息并作为对象返回。
mysql_fetch_field() 可以用来从查询结果中取得字段的信息。如果没有指定字段偏移量,则提取下一个尚未被 mysql_fetch_field() 取得的字段。
该函数返回一个包含字段信息的对象。
被返回的对象的属性为:
mysql_fetch_field(data,field_offset)
参数 | 描述 |
---|---|
data | 必需。要使用的数据指针。该数据指针是从 mysql_query() 返回的结果。 |
field_offset | 必需。规定从哪个字段开始。0 指示第一个字段。如果未设置,则取回下一个字段。 |
注释:本函数返回的字段名是区分大小写的。
<?php
$con = mysql_connect("localhost", "hello", "321");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
$db_selected = mysql_select_db("test_db",$con);
$sql = "SELECT * from Person";
$result = mysql_query($sql,$con);
while ($property = mysql_fetch_field($result)
)
{
echo "Field name: " . $property->name . "<br />";
echo "Table name: " . $property->table . "<br />";
echo "Default value: " . $property->def . "<br />";
echo "Max length: " . $property->max_length . "<br />";
echo "Not NULL: " . $property->not_null . "<br />";
echo "Primary Key: " . $property->primary_key . "<br />";
echo "Unique Key: " . $property->unique_key . "<br />";
echo "Mutliple Key: " . $property->multiple_key . "<br />";
echo "Numeric Field: " . $property->numeric . "<br />";
echo "BLOB: " . $property->blob . "<br />";
echo "Field Type: " . $property->type . "<br />";
echo "Unsigned: " . $property->unsigned . "<br />";
echo "Zero-filled: " . $property->zerofill . "<br /><br />";
}
mysql_close($con);
?>
输出:
Field name: LastName Table name: Person Default value: Max length: 8 Not NULL: 0 Primary Key: 0 Unique Key: 0 Mutliple Key: 0 Numeric Field: 0 BLOB: 0 Field Type: string Unsigned: 0 Zero-filled: 0 Field name: FirstName Table name: Person Default value: Max length: 7 Not NULL: 0 Primary Key: 0 Unique Key: 0 Mutliple Key: 0 Numeric Field: 0 BLOB: 0 Field Type: string Unsigned: 0 Zero-filled: 0 Field name: City Table name: Person Default value: Max length: 9 Not NULL: 0 Primary Key: 0 Unique Key: 0 Mutliple Key: 0 Numeric Field: 0 BLOB: 0 Field Type: string Unsigned: 0 Zero-filled: 0 Field name: Age Table name: Person Default value: Max length: 2 Not NULL: 0 Primary Key: 0 Unique Key: 0 Mutliple Key: 0 Numeric Field: 1 BLOB: 0 Field Type: int Unsigned: 0 Zero-filled: 0