Fonction PHP mysqli_field_seek ()

Définition et utilisation

Un objet résultat PHP (de la classe mysqli_result) représente le résultat MySQL, retourné par les requêtes SELECT ou, DESCRIBE ou, EXPLAIN.

La fonction mysqli_field_seek () accepte un objet de résultat et une valeur entière représentant un numéro de champ, comme paramètres, et déplace la recherche de champ de l'objet de résultat donné vers le champ spécifié.

Syntaxe

mysqli_field_seek($result, $field);

Paramètres

Sr. Non Paramètre et description
1

result(Mandatory)

Il s'agit d'un identifiant représentant un objet de résultat.

2

field(Mandatory)

Il s'agit d'une valeur entière représentant un numéro de champ vers lequel vous devez déplacer la recherche de champ dans l'objet de résultat donné.

Valeurs de retour

La fonction PHP mysqli_field_seek () renvoie une valeur booléenne qui est, TRUE en cas de succès et FALSE en cas d'échec.

Version PHP

Cette fonction a été introduite pour la première fois dans la version 5 de PHP et fonctionne dans toutes les versions ultérieures.

Exemple

L'exemple suivant montre l'utilisation de la fonction mysqli_field_seek () (dans le style procédural) -

<?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("Table Created.....\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("Record Inserted.....\n");

   //Retrieving the contents of the table
   $res = mysqli_query($con, "SELECT * FROM myplayers");

   //Moving the seek to 3rd field
   mysqli_field_seek($res, 2);

   //Fetching the fields
   $info = mysqli_fetch_field($res);
   //Current field
   $currentfield = mysqli_field_tell($res);
   print("Current Field: ".$currentfield."\n");
   print("Name: ".$info->name."\n");
   print("Table: ".$info->table."\n");
   print("Max Length: ".$info->max_length."\n");
   print("Flags: ".$info->flags."\n");
   print("Type: ".$info->type."\n");


   //Closing the statement
   mysqli_free_result($res);

   //Closing the connection
   mysqli_close($con);
?>

Cela produira le résultat suivant -

Table Created.....
Record Inserted.....
Current Field: 3
Name: Last_Name
Table: myplayers
Max Length: 10
Flags: 0
Type: 253

Exemple

Dans le style orienté objet, la syntaxe de cette fonction est $ result-> field_seek; Voici l'exemple de cette fonction dans le style orienté objet $ minus;

<?php
   //Creating a 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("Table Created.....\n");

   $stmt = $con -> prepare( "SELECT * FROM Test WHERE Name in(?, ?)");
   $stmt -> bind_param("ss", $name1, $name2);
   $name1 = 'Raju';
   $name2 = 'Rahman';

   //Executing the statement
   $stmt->execute();

   //Retrieving the result
   $result = $stmt->get_result();

   //Moving the seek to the 2nd field
   $result->field_seek(1);

   //Fetching the 2nd field Current Field
   $info = $result->fetch_field();

   $field = $result->current_field;
   print("Current Field: ".$field."\n");
   print("Field Name: ".$info->name."\n");
   print("Field Type: ".$info->type);


   //Closing the statement
   $stmt->close();
 
   //Closing the connection
   $con->close();
?>

Cela produira le résultat suivant -

Table Created.....
Current Field: 2
Field Name: AGE
Field Type: 3