mysql_field_type
(PHP 4, PHP 5)
mysql_field_type — 取得结果集中指定字段的类型
说明
string <strong>mysql_field_type</strong>
( resource <code>$result</code>
, int <code>$field_offset</code>
)
<p>
<strong>mysql_field_type()</strong> 和
mysql_field_name()
函数相似。参数完全相同,但返回的是字段类型而不是字段名。字段类型有“int”,“real”,“string”,“blob”以及其它,详见
» MySQL 手册。
<p><strong>Example #1 <strong>mysql_field_type()</strong> 例子</strong></p>
<?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($result, 0);
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();
?>
<p>
以上例子将产生如下输出:
</p>
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
</p>
<p>
为向下兼容仍然可以使用
<strong>mysql_fieldtype()</strong>,但反对这样做。
</p>
参数
result
resource 型的结果集。此结果集来自对 mysql_query() 的调用。
field_offset
数值型字段偏移量。
field_offset
从 0 开始。如果
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($result, 0);
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()
参见
mysql_field_name() - 取得结果中指定字段的字段名 mysql_field_len() - 返回指定字段的长度