English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial básico do PHP

Tutorial avançado do PHP

PHP & MySQL

Manual de referência do PHP

Uso e exemplo da função mysqli_fetch_field() do PHP

   PHP MySQLi Referência

A função mysqli_fetch_field() retorna o próximo campo no conjunto de resultados

Definição e uso

O objeto de resultado do PHP (pertencente à classe mysqli_result) representa o resultado do MySQL retornado por consultas SELECT, DESCRIBE ou EXPLAIN
A função mysqli_fetch_field() tem a função de aceitar um objeto de resultado como parâmetro e retornar a próxima coluna na forma de objeto/Informações de definição do campo

Sintaxe

mysqli_fetch_field($result);

Parâmetro

Número de sérieParâmetros e descrição
1

result(obrigatório)

Este é o identificador do objeto de resultado.

Retorno

A função mysqli_fetch_field() do PHP retorna um objeto que contém as informações de definição do campo fornecido no resultado. Se não houver informações, esta função retornaráFALSE.

O objeto retornado contém os seguintes atributos:

  • name - Nome da coluna

  • orgname - Nome original da coluna (se foi especificado um alias)

  • table - Nome da tabela

  • orgtable - Nome original da tabela (se foi especificado um alias)

  • def - reservado como valor padrão, sempre ""

  • db - Banco de dados (no PHP 5.3.6 novo)

  • catalog - Nome do catálogo, sempre "def" (desde PHP 5.3.6 até)

  • max_length - Largura máxima do campo

  • length - Largura especificada no definição da tabela

  • charsetnr - Número de conjunto de caracteres do campo

  • flags - Marcas de bits do campo

  • type - Tipo de dados usado para o campo

  • decimais - Campo inteiro, número de casas decimais após o ponto

Versão do PHP

Esta função foi inicialmente introduzida na versão do PHP5introduzido e pode ser usado em todas as versões mais recentes.

Exemplo online

A seguir é demonstrado um exemplo demysqli_fetch_field()Uso da função (estilo procedimental)-

<?php
   $con = mysqli_connect("localhost", "root", "password", "mydb");
   mysqli_query($con, "CREATE TABLE myplayers(ID INT, First_Name VARCHAR(255), Last_Name VARCHAR(255), Place_Of_Birth VARCHAR(255), Country VARCHAR(255))");
   print("Criar tabela.....\n");
   mysqli_query($con, "INSERT INTO myplayers values(1, 'Sikhar', 'Dhawan', 'Delhi', 'India')");
   mysqli_query($con, "INSERT INTO myplayers values(2, 'Jonathan', 'Trott', 'Cape Town', 'South Africa')");
   mysqli_query($con, "INSERT INTO myplayers values(3, 'Kumara', 'Sangakkara', 'Matale', 'Sri Lanka')");
   print("Inserindo registro.....\n");
   //Recuperar conteúdo da tabela
   $res = mysqli_query($con, "SELECT * FROM myplayers");
   //Obter campo
   while($info = mysqli_fetch_field($res)){
      //Campo atual
      $currentfield = mysqli_field_tell($res);
      print("Campo atual: 	".$currentfield."\n");
      print("Nome do campo: 	".$info->nome."\n");
      print("Tipo do campo: 	".$info->type."\n");
   }
   //Fim da sentença
   mysqli_free_result($res);
   //Fechar conexão
   mysqli_close($con);
?>

Resultados de saída

Criar tabela.....
Inserir registro.....
Campo atual: 1
Nome do campo: ID
Tipo do campo: 3
Campo atual: 2
Nome do campo: First_Name
Tipo do campo: 253
Campo atual: 3
Nome do campo: Last_Name
Tipo do campo: 253
Campo atual: 4
Nome do campo: Place_Of_Birth
Tipo do campo: 253
Campo atual: 5
Nome do campo: Country
Tipo do campo: 253

Exemplo online

Na sintaxe orientada a objetos, a função é$result->fetch_field;.Aqui está um exemplo dessa função no estilo orientado a objetos;

<?php
   //Conectar
   $con = new mysqli("localhost", "root", "password", "mydb");
   $con ->criar tabela Test(Name VARCHAR(255), ID INT)");
   $con ->inserir em Test valores('Raju', 25),('Rahman',  30),('Sarmista', 27);
   print("Criar tabela.....\n");
   $stmt = $con ->preparar( "SELECT * FROM Test WHERE Name in(?, ?)");
   $stmt ->ligar_parametros("ss", 	$name1, 	$name2);
   $name1 = 'Raju';
   $name2 = 'Rahman';
   //Executar sentença
   $stmt->executar();
   //Resultados da busca
   $result = $stmt->get_result();
   //Campo atual
   while($info = $result->fetch_field()){
      $field = $result->current_field;
      print("Campo atual: 	".$field."\n");
      print("Nome do campo: 	".$info->nome."\n");
   }
   //Fim da sentença
   $stmt->fechar();
   //Fechar conexão
   $con->fechar();
?>

PHP MySQLi Referência