mysql_field_type

(PHP 4, PHP 5)

mysql_field_type 取得结果集中指定字段的类型

说明

mysql_field_type ( resource $result , int $field_offset ) : string

mysql_field_type()mysql_field_name() 函数相似。参数完全相同,但返回的是字段类型而不是字段名。字段类型有“int”,“real”,“string”,“blob”以及其它,详见 » MySQL 手册

Example #1 mysql_field_type() 例子

<?php
    mysql_connect
("localhost""mysql_username""mysql_password");
    
mysql_select_db("mysql");
    
$result mysql_query("SELECT * FROM func");
    
$fields mysql_num_fields($result);
    
$rows   mysql_num_rows($result);
    
$table mysql_field_table($result0);
    echo 
"Your '".$table."' table has ".$fields." fields and ".$rows." record(s)\n";
    echo 
"The table has the following fields:\n";
    for (
$i=0$i $fields$i++) {
        
$type  mysql_field_type($result$i);
        
$name  mysql_field_name($result$i);
        
$len   mysql_field_len($result$i);
        
$flags mysql_field_flags($result$i);
        echo 
$type." ".$name." ".$len." ".$flags."\n";
    }
    
mysql_free_result($result);
    
mysql_close();
?>

以上例子将产生如下输出:

Your 'func' table has 4 fields and 1 record(s)
The table has the following fields:
string name 64 not_null primary_key binary
int ret 1 not_null
string dl 128 not_null
string type 9 not_null enum

为向下兼容仍然可以使用 mysql_fieldtype(),但反对这样做。

参数

result

resource 型的结果集。此结果集来自对 mysql_query() 的调用。

field_offset

数值型字段偏移量。 field_offset0 开始。如果 field_offset 不存在,则会发出一个 E_WARNING 级别的错误

返回值

The returned field type will be one of "int", "real", "string", "blob", and others as detailed in the » MySQL documentation.

范例

Example #2 mysql_field_type() example

<?php
mysql_connect
("localhost""mysql_username""mysql_password");
mysql_select_db("mysql");
$result mysql_query("SELECT * FROM func");
$fields mysql_num_fields($result);
$rows   mysql_num_rows($result);
$table  mysql_field_table($result0);
echo 
"Your '" $table "' table has " $fields " fields and " $rows " record(s)\n";
echo 
"The table has the following fields:\n";
for (
$i=0$i $fields$i++) {
    
$type  mysql_field_type($result$i);
    
$name  mysql_field_name($result$i);
    
$len   mysql_field_len($result$i);
    
$flags mysql_field_flags($result$i);
    echo 
$type " " $name " " $len " " $flags "\n";
}
mysql_free_result($result);
mysql_close();
?>

以上例程的输出类似于:

Your 'func' table has 4 fields and 1 record(s)
The table has the following fields:
string name 64 not_null primary_key binary
int ret 1 not_null
string dl 128 not_null
string type 9 not_null enum

注释

Note:

为了向下兼容,可以使用下列已废弃的别名: mysql_fieldtype()

参见

关注编程学问公众号