Forum und email

mysqli_fetch_fields

result->fetch_fields()

(No version information available, 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:

array mysqli_fetch_fields ( mysqli_result $result )

Estilo orientado a objeto (metodo):

mysql_result
array 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.

Parâmetros

result

Apenas para estilo de procedimento: Um identificador de um conjunto de resultados retornado por mysqli_query(), mysqli_store_result() ou mysqli_use_result().

Valor Retornado

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.

Propriedades dos objetos
Propriedade Descrição
name O nome da coluna
orgname O nome original da coluna se foi especificado um alias
table O nome da tabela a qual o campo pertence (se não for calculado)
orgtable Nome da tabela original se foi especificado um alias
def O valor padrão para este campo, representado como um string
max_length A largura máxima do campo no conjunto de resultados.
length O tamanho do campo, como específicado na definição da tabela.
charsetnr O número do conjunto de caracteres do campo.
flags Um inteiro representando bit-flags para o campo.
type O tipo de dados usado para este campo
decimals O número de decimais usados (para campos integer)

Exemplos

Example#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();

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

O exemplo acima irá imprimir:

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

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