php-doc-en/reference/mysql/functions/mysql-fetch-field.xml

213 lines
5.3 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="function.mysql-fetch-field" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>mysql_fetch_field</refname>
<refpurpose>Get column information from a result and return as an object</refpurpose>
</refnamediv>
<refsynopsisdiv role="soft-deprecation-notice">
<sidebar>
&mysql.alternative.note;
<simplelist role="alternatives">
<member><function>mysqli_fetch_field</function></member>
<member><methodname>PDOStatement::getColumnMeta</methodname></member>
</simplelist>
</sidebar>
</refsynopsisdiv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>object</type><methodname>mysql_fetch_field</methodname>
<methodparam><type>resource</type><parameter>result</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>field_offset</parameter><initializer>0</initializer></methodparam>
</methodsynopsis>
<para>
Returns an object containing field information. This function can be used
to obtain information about fields in the provided query result.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
&mysql.result.description;
<varlistentry>
<term><parameter>field_offset</parameter></term>
<listitem>
<para>
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 <parameter>field_offset</parameter> starts at <literal>0</literal>.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns an <type>object</type> containing field information. The properties
of the object are:
</para>
<para>
<itemizedlist>
<listitem>
<simpara>
name - column name
</simpara>
</listitem>
<listitem>
<simpara>
table - name of the table the column belongs to, which is the alias name if one is defined
</simpara>
</listitem>
<listitem>
<simpara>
max_length - maximum length of the column
</simpara>
</listitem>
<listitem>
<simpara>
not_null - 1 if the column cannot be &null;
</simpara>
</listitem>
<listitem>
<simpara>
primary_key - 1 if the column is a primary key
</simpara>
</listitem>
<listitem>
<simpara>
unique_key - 1 if the column is a unique key
</simpara>
</listitem>
<listitem>
<simpara>
multiple_key - 1 if the column is a non-unique key
</simpara>
</listitem>
<listitem>
<simpara>
numeric - 1 if the column is numeric
</simpara>
</listitem>
<listitem>
<simpara>
blob - 1 if the column is a BLOB
</simpara>
</listitem>
<listitem>
<simpara>
type - the type of the column
</simpara>
</listitem>
<listitem>
<simpara>
unsigned - 1 if the column is unsigned
</simpara>
</listitem>
<listitem>
<simpara>
zerofill - 1 if the column is zero-filled
</simpara>
</listitem>
</itemizedlist>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title><function>mysql_fetch_field</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
$conn = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$conn) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db('database');
$result = mysql_query('select * from table');
if (!$result) {
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, $i);
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);
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
&database.field-case;
<note>
<para>
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
<methodname>mysqli_result::fetch_field</methodname>.
</para>
</note>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>mysql_field_seek</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->