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

Tutoriale di base PHP

Tutoriale avanzato PHP

PHP & MySQL

Manuale di riferimento PHP

Uso e esempio della funzione PHP mysqli_fetch_field_direct()

   PHP MySQLi Manuale di riferimento

La funzione mysqli_fetch_field_direct() ottiene i metadati di un singolo campo

Definizione e uso

Oggetto di risultato PHP (classe mysqli_result) rappresenta il risultato MySQL, restituito da SELECT o DESCRIBE o EXPLAIN query.
La funzione mysqli_fetch_field_direct() accetta un oggetto di risultato e un intero che rappresenta il numero di campo e restituisce le informazioni di definizione del campo specificato sotto forma di oggetto.

Sintassi

mysqli_fetch_field_direct($result, $field);

Parametro

Numero di sequenzaParametri e descrizione
1

result(Obbligatorio)

Questo è l'identificatore dell'oggetto del risultato.

2

field(Obbligatorio)

Un valore intero che rappresenta il campo per il quale si desidera ottenere i metadati/informazioni di definizione.

Valore di ritorno

La funzione PHP mysqli_fetch_field_direct() restituisce un oggetto che contiene le informazioni di definizione del campo specificato. Se il campo specificato (numerico) non è disponibile, questa funzione restituisceFALSE.

L'oggetto restituito contiene le seguenti proprietà:

  • name - nome della colonna

  • orgname - nome della colonna originale (se è stato specificato un alias)

  • table - nome della tabella

  • orgtable - nome della tabella originale (se è stato specificato un alias)

  • def - valore predefinito del campo

  • max_length - larghezza massima del campo

  • length - larghezza del campo specificata nella definizione della tabella

  • charsetnr - numero di set di caratteri del campo

  • flags - segni di bit del campo

  • type - tipo di dati utilizzato per il campo

  • decimals - campo intero, numero di cifre dopo il punto decimale

Versione PHP

Questa funzione è stata introdotta originariamente nella versione PHP 5 e può essere utilizzata in tutte le versioni successive.

Online example

Esempi seguenti dimostranomysqli_fetch_field_direct()L'uso della funzione (stile orientato ai processi), restituisce i metadati del terzo campo (colonna) del risultato e outputta il nome del campo, la tabella e la lunghezza massima, il tipo di dati e il numero di set di caratteri del campo:

<?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("Creare la tabella.....\n");
   mysqli_query($con, "INSERT INTO myplayers values(1, 'Sikhar', 'Dhawan', 'Delhi', 'India')");
   mysqli_query($con, "INSERT INTO myplayers values(2, 'Jonathan', 'Trott', 'CapeTown', 'SouthAfrica')");
   mysqli_query($con, "INSERT INTO myplayers values(3, 'Kumara', 'Sangakkara', 'Matale', 'Srilanka')");
   print("Insert record.....\n");
   //Retrieve the content of the table
   $res = mysqli_query($con, "SELECT * FROM myplayers");
   //Get metadata of the third field
   $info = mysqli_fetch_field_direct($res, 2);
   print("Nome: ".$info->name."\n");
   print("Tabella: ".$info->table."\n");
   print("Lunghezza massima: ".$info->max_length."\n");
   print("Flag: ".$info->flags."\n");
   print("Tipo: ".$info->type."\n");
   print("Definizione: ".$info->def."\n");
   print("Set di caratteri: ".$info->charsetnr."\n");
   //Fine della frase
   mysqli_free_result($res);
   //Chiudere la connessione
   mysqli_close($con);
?>

Risultato dell'output

Creare la tabella.....
Insert record.....
Name: Last_Name
Table: myplayers
Max Length: 10
Flags: 0
Type: 253

Online example

The syntax of this function in the object-oriented style is$result->fetch_field_direct();。The following is the metadata of the second field (column) in the result set returned by this function in the object-oriented style, and outputs the field name, table, maximum length, data type, and character set number of the field:

<?php
   //Establish connection
   $con = new mysqli("localhost", "root", "password", "mydb");
   $con->query("CREATE TABLE Test(Name VARCHAR(255), AGE INT)");
   $con->query("insert into Test values('Raju', 25),('Rahman', 30),('Sarmista', 27)");
   print("Creare la tabella.....\n");
   $stmt = $con->prepare("SELECT * FROM Test WHERE Name in(?, ?)");
   $stmt->bind_param("ss", $name1, $name2);
   $name1 = 'Raju';
   $name2 = 'Rahman';
   //Eseguire la frase
   $stmt->execute();
   //Ricerca dei risultati
   $result = $stmt->get_result();
   //Ottenere i metadati del secondo campo
   $info = $result->fetch_field_direct(1);
   print("Nome: ".$info->name."\n");
   print("Tabella: ".$info->table."\n");
   print("Lunghezza massima: ".$info->max_length."\n");
   print("Flag: ".$info->flags."\n");
   print("Tipo: ".$info->type."\n");
   print("Definizione: ".$info->def."\n");
   print("Set di caratteri: ".$info->charsetnr."\n");
   //Fine della frase
   $stmt->close();
   //Chiudere la connessione
   $con->close();
?>

Risultato dell'output

Creare la tabella.....
Nome: AGE
Tabella: Test
Lunghezza massima: 0
Flag: 32768
Tipo: 3
Definizione:
Set di caratteri: 63

PHP MySQLi Manuale di riferimento