PHP
downloads | documentation | faq | getting help | mailing lists | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

mysqli_fetch_fields> <mysqli_fetch_field_direct
Last updated: Fri, 14 Nov 2008

view this page in

mysqli_fetch_field

result->fetch_field

(PHP 5)

mysqli_fetch_field -- result->fetch_fieldRetorna o próximo campo no conjunto de resultados

Descrição

Estilo de procedimento:

mixed mysqli_fetch_field ( object $result )

Estilo orientado a objeto (metodo):

result
mixed fetch_field ( void )

A função mysqli_fetch_field() retorna a definição de uma coluna do conjunto de resultados como um objeto. Utilize esta função repetidamente para obter sobre todas as colunas no conjunto de resultados. mysqli_fetch_field() retorna FALSE quando não houverem mais campos.

Valores de retorno

Retorna um objeto o qual contém informações sobre a definição do campoou FALSE se não houver informação sobre campos disponível.

Propriedades do objeto
Propriedade Descrição
name O nome da coluna
orgname Nome original da coluna se foi especificado um alias
table O nome da tabela a qual este campo pertence (se não for calculada)
orgtable Nome da tabela original se foi especificado um alias
def O valor padrão para este campo, representando como uma string
max_length O tamanho máximo do campo no conjunto de resultados.
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 (par campos integer)

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 */
    
while ($finfo $result->fetch_field()) {
 
        
printf("Name:     %s\n"$finfo->name);
        
printf("Table:    %s\n"$finfo->table);
        
printf("max. Len: %d\n"$finfo->max_length);
        
printf("Flags:    %d\n"$finfo->flags);
        
printf("Type:     %d\n\n"$finfo->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 fields */
    
while ($finfo mysqli_fetch_field($result)) {
 
        
printf("Name:     %s\n"$finfo->name);
        
printf("Table:    %s\n"$finfo->table);
        
printf("max. Len: %d\n"$finfo->max_length);
        
printf("Flags:    %d\n"$finfo->flags);
        
printf("Type:     %d\n\n"$finfo->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



add a note add a note User Contributed Notes
mysqli_fetch_field
ragtag at hotmail dot com
17-Sep-2008 05:16
The flags used by MySql are:                                                                                                                                           
       NOT_NULL_FLAG = 1                                                                             
       PRI_KEY_FLAG = 2                                                                              
       UNIQUE_KEY_FLAG = 4                                                                           
       BLOB_FLAG = 16                                                                                
       UNSIGNED_FLAG = 32                                                                            
       ZEROFILL_FLAG = 64                                                                            
       BINARY_FLAG = 128                                                                             
       ENUM_FLAG = 256                                                                               
       AUTO_INCREMENT_FLAG = 512                                                                     
       TIMESTAMP_FLAG = 1024                                                                         
       SET_FLAG = 2048                                                                               
       NUM_FLAG = 32768                                                                              
       PART_KEY_FLAG = 16384                                                                         
       GROUP_FLAG = 32768                                                                            
       UNIQUE_FLAG = 65536                                                                           

To test if a flag is set you can use & like so:
<?php
$meta
= $mysqli_result_object->fetch_field();
if (
$meta->flags & 4) {
  echo
'Unique key flag is set';
}
?>

mysqli_fetch_fields> <mysqli_fetch_field_direct
Last updated: Fri, 14 Nov 2008
 
 
show source | credits | stats | sitemap | contact | advertising | mirror sites