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

PHP Basic Tutorial

PHP Advanced Tutorial

PHP & MySQL

PHP Referenzhandbuch

Verwendung und Beispiel der Funktion PHP mysqli_fetch_object()

PHP MySQLi Referenzhandbuch

Die Funktion mysqli_fetch_object() holt die aktuelle Zeile aus der Ergebnismenge und gibt sie als Objekt zurück.
Hinweis: Die von der Funktion zurückgegebenen Feldnamen sind groß-/kleinschreibungsabhängig.

Definition und Verwendung

Ein PHP-Ergebnisobjekt (mysqli_result-Klasse) stellt die MySQL-Ergebnisse, die durch SELECT oder DESCRIBE oder EXPLAIN-Abfragen zurückgegeben werden, dar.

mysqli_fetch_object()Die Funktion akzeptiert ein Ergebnisobjekt als Parameter,检索给定结果中的当前行内容,并将它们作为一个对象 zurückgibt.

Syntax

mysqli_fetch_object($result, [$class_name, $params]);

Parameter

NummerParameter und Beschreibung
1

result (notwendig)

Dies ist der Identifikator für das Ergebnisobjekt.

2

class_name (optional)

Der Name der Klasse, die instanziert werden soll, deren Attribute gesetzt und zurückgegeben werden.

3

params (optional)

Geben Sie ein Parameter-Array an, das an den Konstruktor der class_name-Objekt übergeben wird.

Rückgabewert

Die Funktion mysqli_fetch_object() gibt ein Objekt (mit String-Attributen) zurück, das die aktuelle Zeile des Ergebnisobjekts speichert. Wenn keine weiteren Zeilen vorhanden sind, gibt diese Funktion NULL zurück.

PHP-Version

Diese Funktion wurde ursprünglich in PHP-Version5eingeführt und kann in allen höheren Versionen verwendet werden.

Online-Beispiel

Nachfolgender Beispiel zeigtmysqli_fetch_object()Verwendung der Funktion (prozeduraler Stil), gibt alle Zeilen des Ergebnisses zurück und gibt den Wert jedes Felds aus:

<?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("Tabelle erstellen.....\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("Einen Eintrag einfügen.....\n");
   //Inhalt der Tabelle abrufen
   $res = mysqli_query($con, "SELECT * FROM myplayers");
   //Alle Zeilen als Objekte abrufen
   while($obj = mysqli_fetch_object($res)){
      print("ID: ".$obj->ID."\n");
      print("First_Name: ".$obj->First_Name."\n");
      print("Last_Name: ".$obj->Last_Name."\n");
      print("Place_Of_Birth: ".$obj->Place_Of_Birth."\n");
      print("Country: ".$obj->Country."\n");
   }
   //Anweisung beenden
   mysqli_free_result($res);
   //Verbindung schließen
   mysqli_close($con);
?>

Ausgabeergebnis

Tabelle erstellen.....
Einen Eintrag einfügen.....
ID: 1
First_Name: Sikhar
Nachname: Dhawan
Geburtsort: Delhi
Land: Indien
ID: 2
Vorname: Jonathan
Nachname: Trott
Geburtsort: Cape Town
Land: Südafrika
ID: 3
Vorname: Kumara
Nachname: Sangakkara
Geburtsort: Matale
Land: Sri Lanka

Online-Beispiel

In der objektorientierten Syntax ist die Syntax dieser Funktion$result-> fetch_object();。Hier ist ein Beispiel für diese Funktion im objektorientierten Stil;

<?php
   //Verbindung herstellen
   $con = new mysqli("localhost", "root", "password", "mydb");
   $con -> query("CREATE TABLE Test(Name VARCHAR(255), Alter INT)");
   $con -> query("insert into Test values('Raju', 25),('Rahman', 30),('Sarmista', 27)");
   print("Tabelle erstellen.....\n");
   $stmt = $con -> prepare( "SELECT * FROM Test WHERE Name in(?, ?)");
   $stmt -> bind_param("ss", $name1, $name2);
   $name1 = 'Raju';
   $name2 = 'Rahman';
   //Anweisung ausführen
   $stmt->execute();
   //Suchergebnis
   $result = $stmt->get_result();
   //Alle Zeilen als Array erhalten
   while($obj = $result->fetch_object()){	
      print("Name: ".$obj->Name."\n");
      print("Alter: ".$obj->Alter."\n");
   }
   //Anweisung beenden
   $stmt->close();
   //Verbindung schließen
   $con->close();
?>

Ausgabeergebnis

Tabelle erstellen.....
Name: Raju
Alter: 25
Name: Rahman
Alter: 30

PHP MySQLi Referenzhandbuch