mysqli_fetch_fields

(PHP 5)

mysqli_fetch_fields

(no version information, might be only in CVS)

result->fetch_fields -- Retorna uma matriz de objetos representando os campos em um conjunto de resultados

Descrição

Estilo de procedimento:

mixed mysqli_fetch_fields ( object result )

Estilo orientado a objeto (metodo):

class result {

mixed fetch_fields ( void )

}

Esta função serve para o mesmo propósito que a função mysqli_fetch_field() com uma simples diferença, ao invés de retornar um objeto de cada vez para cada campo, as colunas são retornadas como uma matriz de objetos.

Valores de retorno

Retorna uma matriz de objetos o quais contém informações sobre as definições dos campo ou FALSE se não houver inforções dos campos disponíveis.

Tabela 1. Propriedades dos objetos

PropriedadeDescrição
nameO nome da coluna
orgnameO nome original da coluna se foi especificado um alias
tableO nome da tabela a qual o campo pertence (se não for calculado)
orgtableNome da tabela original se foi especificado um alias
defO valor padrão para este campo, representado como um string
max_lengthA largura máxima do campo no conjunto de resultados.
flagsUm inteiro representando bit-flags para o campo.
typeO tipo de dados usado para este campo
decimalsO número de decimais usados (para campos integer)

Veja também

mysqli_num_fields() mysqli_fetch_field() mysqli_fetch_field_direct()

Exemplo

Exemplo 1. Estilo orientado a objeto

<?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();

    for (
$i=0; $i < count($finfo); $i++) {
        
printf("Name:     %s\n", $finfo[$i]->name);
        
printf("Table:    %s\n", $finfo[$i]->table);
        
printf("max. Len: %d\n", $finfo[$i]->max_length);
        
printf("Flags:    %d\n", $finfo[$i]->flags);
        
printf("Type:     %d\n\n", $finfo[$i]->type);
    }    
    
$result->close();
}

/* close connection */
$mysqli->close();
?>

Exemplo 2. Estilo de procedimento

<?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);

    for (
$i=0; $i < count($finfo); $i++) {
        
printf("Name:     %s\n", $finfo[$i]->name);
        
printf("Table:    %s\n", $finfo[$i]->table);
        
printf("max. Len: %d\n", $finfo[$i]->max_length);
        
printf("Flags:    %d\n", $finfo[$i]->flags);
        
printf("Type:     %d\n\n", $finfo[$i]->type);
    }    
    
mysqli_free_result($result);
}

/* close connection */
mysqli_close($link);
?>

Os exemplos acima devem produzir a seguinte saída:

Name:     Name
Table:    Country
max. Len: 11
Flags:    1
Type:     254

Name:     SurfaceArea
Table:    Country
max. Len: 10
Flags:    32769
Type:     4