mysql_fetch_field

(PHP 3, PHP 4, PHP 5)

mysql_fetch_field --  從結果集中取得列訊息並作為物件返回

說明

object mysql_fetch_field ( resource result [, int field_offset] )

返回一個包括欄位訊息的對象。

mysql_fetch_field() 可以用來從某個查詢結果中取得欄位的訊息。若果沒有指定欄位偏移量,則下一個尚未被 mysql_fetch_field() 取得的欄位被提取。

對象的屬性為:

  • name - 列名

  • table - 該列所在的表名

  • 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

注: 本函數返回的欄位名是區分大小寫的。

例子 1. mysql_fetch_field()

<?php
mysql_connect
('localhost:3306'$user$password)
    or die(
"Could not connect: " mysql_error());
mysql_select_db("database");
$result mysql_query("select * from table")
    or die(
"Query failed: " mysql_error());
/* get column metadata */
$i 0;
while (
$i mysql_num_fields($result)) {
    echo 
"Information for column $i:<br />\n";
    
$meta mysql_fetch_field($result);
    if (!
$meta) {
        echo 
"No information available<br />\n";
    }
    echo 
"<pre>
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
</pre>"
;
    
$i++;
}
mysql_free_result($result);
?>

參見 mysql_field_seek()