mysqli_result::data_seek

mysqli_data_seek

(PHP 5, PHP 7, PHP 8)

mysqli_result::data_seek -- mysqli_data_seek — DĂ©place le pointeur interne de rĂ©sultat

Description

Style orienté objet

public function mysqli_result::data_seek(int $offset): bool

Style procédural

function mysqli_data_seek(mysqli_result $result, int $offset): bool

La fonction mysqli_data_seek() déplace le pointeur interne de résultat associé au jeu de résultat représenté par result, en le faisant pointer sur la ligne spécifiée par offset.

Liste de paramĂštres

result
Style procédural uniquement : Un objet mysqli_result retourné par mysqli_query(), mysqli_store_result(), mysqli_use_result(), ou mysqli_stmt_get_result().
offset

Le dĂ©calage de la ligne. Le paramĂštre offset doit ĂȘtre compris entre zĂ©ro et mysqli_num_rows() - 1 (0..mysqli_num_rows() - 1).

Valeurs de retour

Cette fonction retourne true en cas de succĂšs ou false si une erreur survient.

Exemples

Exemple #1 Exemple avec mysqli::data_seek()

Style orienté objet

<?php

mysqli_report
(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

$query = "SELECT Name, CountryCode FROM City ORDER BY Name";
$result = $mysqli->query($query);

/* Recherche la ligne 401 */
$result->data_seek(400);

/* Récupération de cette ligne */
$row = $result->fetch_row();
printf("Ville: %s Code Pays: %s\n", $row[0], $row[1]);
?>

Style procédural

<?php

mysqli_report
(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

$query = "SELECT Name, CountryCode FROM City ORDER BY Name";
$result = mysqli_query($link, $query);

/* Recherche la ligne 401 */
mysqli_data_seek($result, 400);

/* Récupération de cette ligne */
$row = mysqli_fetch_row($result);
printf("Ville: %s Code Pays: %s\n", $row[0], $row[1]);

Les exemples ci-dessus vont afficher :

Ville: Benin City  Code Pays: NGA

Exemple #2 Ajustement du pointeur de résultat lors de l'itération

Cette fonction peut ĂȘtre utile lors de l'itĂ©ration sur l'ensemble des rĂ©sultats pour imposer un ordre personnalisĂ© ou pour rembobiner l'ensemble des rĂ©sultats lors d'itĂ©rations multiples.

<?php

mysqli_report
(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

$query = "SELECT Name, CountryCode FROM City ORDER BY Name LIMIT 15,4";
$result = $mysqli->query($query);

/* Interroger l'ensemble des résultats dans l'ordre inverse */
for ($row_no = $result->num_rows - 1; $row_no >= 0; $row_no--) {
$result->data_seek($row_no);

/* Récupération de cette ligne */
$row = $result->fetch_row();
printf("Ville: %s Code Pays: %s\n", $row[0], $row[1]);
}

/* Remise à zéro du pointeur au début de l'ensemble de résultats */
$result->data_seek(0);
print
"\n";

/* Interroger Ă  nouveau le mĂȘme ensemble de rĂ©sultats */
while ($row = $result->fetch_row()) {
printf("Ville: %s Code Pays: %s\n", $row[0], $row[1]);
}

Les exemples ci-dessus vont afficher :

Ville: Acmbaro  Code Pays: MEX
Ville: Abuja  Code Pays: NGA
Ville: Abu Dhabi  Code Pays: ARE
Ville: Abottabad  Code Pays: PAK

Ville: Abottabad  Code Pays: PAK
Ville: Abu Dhabi  Code Pays: ARE
Ville: Abuja  Code Pays: NGA
Ville: Acmbaro  Code Pays: MEX

Notes

Note:

Cette fonction ne peut ĂȘtre utilisĂ©e qu'avec des rĂ©sultats obtenus avec la fonction mysqli_store_result(), mysqli_query() ou mysqli_stmt_get_result().

Voir aussi

  • mysqli_store_result() - TransfĂšre un jeu de rĂ©sultats Ă  partir de la derniĂšre requĂȘte
  • mysqli_fetch_row() - RĂ©cupĂšre une ligne de rĂ©sultat sous forme de tableau indexĂ©
  • mysqli_fetch_array() - RĂ©cupĂšre la ligne suivante d'un ensemble de rĂ©sultats sous forme de tableau associatif, numĂ©rique ou les deux
  • mysqli_fetch_assoc() - RĂ©cupĂšre la ligne suivante d'un ensemble de rĂ©sultats sous forme de tableau associatif
  • mysqli_fetch_object() - Retourne la ligne suivante d'un ensemble de rĂ©sultats sous forme d'objet
  • mysqli_query() - ExĂ©cute une requĂȘte sur la base de donnĂ©es
  • mysqli_num_rows() - Retourne le nombre de lignes dans le jeu de rĂ©sultats
add a note

User Contributed Notes

There are no user contributed notes for this page.