mysqli_result::fetch_fields, mysqli_fetch_fields
mysqli_result::fetch_fieldsmysqli_fetch_fieldsReturns an array of objects representing the fields in a result set
Description
Object oriented stylearray mysqli_result::fetch_fields();
Procedural stylearray mysqli_fetch_fields(mysqli_result result);
This function serves an identical purpose to the mysqli_fetch_field function with the single difference that, instead of returning one object at a time for each field, the columns are returned as an array of objects.
Parameters
result-
Procedural style only: A result set identifier returned by
mysqli_query,mysqli_store_resultormysqli_use_result.
Return Values
Returns an array of objects which contains field definition information or FALSE if no field information is available.
Table 20.23. Object properties
| Property | Description |
|---|---|
| name | The name of the column |
| orgname | Original column name if an alias was specified |
| table | The name of the table this field belongs to (if not calculated) |
| orgtable | Original table name if an alias was specified |
| max_length | The maximum width of the field for the result set. |
| length | The width of the field, as specified in the table definition. |
| charsetnr | The character set number for the field. |
| flags | An integer representing the bit-flags for the field. |
| type | The data type used for this field |
| decimals | The number of decimals used (for integer fields) |
Examples
Example 20.188. Object oriented style
<?php
$mysqli = new mysqli('localhost', 'my_user', 'my_password', 'world');
/* check connection */
if (mysqli_connect_errno()) {
printf('Connect failed: %s\n', mysqli_connect_error());
exit();
}
$query = 'SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5';
if ($result = $mysqli->query($query)) {
/* Get field information for all columns */
$finfo = $result->fetch_fields();
foreach ($finfo as $val) {
printf('Name: %s\n', $val->name);
printf('Table: %s\n', $val->table);
printf('max. Len: %d\n', $val->max_length);
printf('Flags: %d\n', $val->flags);
printf('Type: %d\n\n', $val->type);
}
$result->close();
}
/* close connection */
$mysqli->close();
?>
Example 20.189. Procedural style
<?php
$link = mysqli_connect('localhost', 'my_user', 'my_password', 'world');
/* check connection */
if (mysqli_connect_errno()) {
printf('Connect failed: %s\n', mysqli_connect_error());
exit();
}
$query = 'SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5';
if ($result = mysqli_query($link, $query)) {
/* Get field information for all columns */
$finfo = mysqli_fetch_fields($result);
foreach ($finfo as $val) {
printf('Name: %s\n', $val->name);
printf('Table: %s\n', $val->table);
printf('max. Len: %d\n', $val->max_length);
printf('Flags: %d\n', $val->flags);
printf('Type: %d\n\n', $val->type);
}
mysqli_free_result($result);
}
/* close connection */
mysqli_close($link);
?>
The above examples will output:
Name: Name Table: Country max. Len: 11 Flags: 1 Type: 254 Name: SurfaceArea Table: Country max. Len: 10 Flags: 32769 Type: 4
See Also
mysqli_num_fields
|
mysqli_fetch_field_direct
|
mysqli_fetch_field |