Funktionsname: MySQLI_STMT :: Next_Result ()
Anwendbare Version: Php 5> = 5.3.0, Php 7
Funktionsbeschreibung: MySQLI_STMT :: NEXT_RESULT () wird verwendet, um den Zeiger des Ergebniss auf das nächste Ergebnis zu verschieben, wenn eine gespeicherte Prozedur ausgeführt wird.
Syntax: bool mysqli_stmt :: next_result ()
Parameter Beschreibung: Diese Funktion hat keine Parameter.
Rückgabewert: Return true, wenn er erfolgreich auf das nächste Ergebnis verschoben wird. Wenn keine Ergebnisse mehr verfügbar sind, wird FALSE zurückgegeben.
Beispielcode:
<?php // 创建数据库连接$mysqli = new mysqli("localhost", "username", "password", "database"); // 检查连接是否成功if ($mysqli->connect_errno) { echo "连接数据库失败: " . $mysqli->connect_error; exit(); } // 准备执行存储过程$stmt = $mysqli->prepare("CALL your_stored_procedure()"); // 执行存储过程if ($stmt->execute()) { // 检查是否有结果集if ($stmt->store_result()) { // 处理第一个结果集// ... // 检查是否还有更多的结果集while ($stmt->next_result()) { // 处理下一个结果集// ... } } else { echo "没有结果集可用"; } } else { echo "执行存储过程失败: " . $stmt->error; } // 关闭语句和数据库连接$stmt->close(); $mysqli->close(); ?>
Im obigen Beispielcode erstellen wir zunächst eine Datenbankverbindung und bereiten dann eine gespeicherte Prozedur vor. Nach Ausführung der gespeicherten Prozedur verwenden wir store_result()
, um zu überprüfen, ob ein Ergebnissatz verfügbar ist. Wenn ein Ergebnissatz vorhanden ist, wird die erste Ergebnismenge verarbeitet und next_result()
-Methode wird verwendet, um die nachfolgende Ergebnismenge in der Schleife zu verarbeiten. Wenn keine Ergebnismenge verfügbar ist, wird die entsprechende Fehlermeldung ausgegeben. Schließlich haben wir die Anweisung und die Datenbankverbindung geschlossen.