English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
The mysqli_free_result() function releases the result memory.
A PHP result object (mysqli_result class) represents the MySQL result returned by a SELECT or DESCRIBE or EXPLAIN query.
mysqli_free_result()The function accepts a result object as a parameter and releases the memory associated with it.
mysqli_free_result($result);
Serial number | Parameters and description |
---|---|
1 | result(required) This is the identifier representing the result object. |
This function does not return any value.
This function was originally in PHP version5introduced and can be used in all higher versions.
The following example demonstratesmysqli_free_result()Usage of the function (procedural style), get rows from the result set, then release the memory of the result set:
<?php $con = mysqli_connect("localhost", "root", "password", "mydb"); mysqli_query($con, "CREATE TABLE myplayers(ID INT, Prénom VARCHAR(255), Nom_de_Famille VARCHAR(255), Lieu_de_Naissance VARCHAR(255), Pays VARCHAR(255))"); print("Créer une table.....\n"); mysqli_query($con, "INSERT INTO myplayers values(1, 'Sikhar', 'Dhawan', 'Delhi', 'Inde')"); mysqli_query($con, "INSERT INTO myplayers values(2, 'Jonathan', 'Trott', 'Cape Town', 'Afrique du Sud')"); mysqli_query($con, "INSERT INTO myplayers values(3, 'Kumara', 'Sangakkara', 'Matale', 'Sri Lanka')"); print("Insertion des enregistrements.....\n"); //Contenu de la table de recherche $res = mysqli_query($con, "SELECT * FROM myplayers"); print("Contents of the resultset...\n"); //Contenu du jeu de résultats while ($row = mysqli_fetch_row($res)) { print("ID: ".$row[0]."\n"); print("Prénom: ".$row[1]."\n"); print("Nom_de_Famille: ".$row[2]."\n"); print("Lieu_de_Naissance: ".$row[3]."\n"); print("Pays: ".$row[4]."\n"); } //End statement, release memory mysqli_free_result($res); //Fermer la connexion mysqli_close($con); ?>
Résultat de la sortie
Créer une table..... Insertion d'enregistrements..... Contents of the resultset... ID: 1 First_Name: Sikhar Nom_de_Famille: Dhawan Lieu_de_Naissance: Delhi Pays: Inde ID: 2 Prénom: Jonathan Nom_de_Famille: Trott Lieu_de_Naissance: Cape Town Pays: Afrique du Sud ID: 3 Prénom: Kumara Nom_de_Famille: Sangakkara Lieu_de_Naissance: Matale Pays: Sri Lanka
Si vous essayez d'obtenir le contenu des résultats après avoir libéré les résultats-
$con = mysqli_connect("localhost", "root", "password", "mydb"); mysqli_query($con, "CREATE TABLE myplayers(ID INT, Prénom VARCHAR(255), Nom_de_Famille VARCHAR(255), Lieu_de_Naissance VARCHAR(255), Pays VARCHAR(255))"); print("Créer une table.....\n"); mysqli_query($con, "INSERT INTO myplayers values(1, 'Sikhar', 'Dhawan', 'Delhi', 'Inde')"); mysqli_query($con, "INSERT INTO myplayers values(2, 'Jonathan', 'Trott', 'Cape Town', 'Afrique du Sud')"); mysqli_query($con, "INSERT INTO myplayers values(3, 'Kumara', 'Sangakkara', 'Matale', 'Sri Lanka')"); print("Insertion des enregistrements.....\n"); //Contenu de la table de recherche $res = mysqli_query($con, "SELECT * FROM myplayers"); //Terminer l'instruction mysqli_free_result($res); print("Contenu du jeu de résultats...\n"); //Contenu du jeu de résultats while ($row = mysqli_fetch_row($res)) { print("ID: ".$row[0]."\n"); print("Prénom: ".$row[1]."\n"); print("Nom_de_Famille: ".$row[2]."\n"); print("Lieu_de_Naissance: ".$row[3]."\n"); print("Pays: ".$row[4]."\n"); } //Fermer la connexion mysqli_close($con);
Vous recevrez l'erreur suivante
Créer une table..... Insertion d'enregistrements..... Contenu du jeu de résultats... PHP Avertissement: mysqli_fetch_row() : Impossible de récupérer mysqli_result dans E:\PHPExamples\procedure_oriented.php à la ligne 19 Avertissement: mysqli_fetch_row() : Impossible de récupérer mysqli_result dans E:\PHPExamples\procedure_oriented.php à la ligne 19
Dans le style orienté objet, la syntaxe de cette fonction est$result-> fermer();.Voici un exemple de cette fonction dans un style orienté objet ;
<?php //Établir la connexion $con = new mysqli("localhost", "root", "password", "mydb"); $con -> query("CREATE TABLE Test(Name VARCHAR(255), ÂGE INT)"); $con -> query("insert into Test values('Raju', 25),('Rahman', 30),('Sarmista', 27); print("Créer une table.....\n"); $stmt = $con -> préparer("SELECT * FROM Test WHERE Name in(?, ?) $stmt -> lie_param("ss", $name1, $name2); $name1 = 'Raju'; $name2 = 'Rahman'; //Exécuter l'instruction $stmt->exécuter(); //Résultat de la recherche $result = $stmt->get_result(); //Nombre de lignes $count = $result->num_rows; print("Nombre de lignes dans le résultat: ".$count); //Fermer le résultat $result->fermer(); //Terminer l'instruction $stmt->fermer(); //Fermer la connexion $con->fermer(); ?>
Résultat de la sortie
Créer une table..... Nombre de lignes dans le résultat: 2