PHP
Database/MySQL

mysqli_stmt::get_result

mysqli_stmt::get_result

mysqli_stmt_get_result

(PHP 5 >= 5.3.0, PHP 7)

mysqli_stmt :: get_result - mysqli_stmt_get_result - 从预处理语句中获取结果集

描述

面向对象的风格

mysqli_result mysqli_stmt::get_result ( void )

程序风格

mysqli_result mysqli_stmt_get_result ( mysqli_stmt $stmt )

调用以从预处理语句查询中返回结果集。

参数

`stmt`

仅过程风格:由mysqli_stmt_init()返回的语句标识符。

返回值

为成功的SELECT查询或FALSE其他DML查询或失败返回结果集。mysqli_errno()函数可用于区分这两种类型的故障。

仅限MySQL本地驱动程序

仅适用于mysqlnd

例子

Example #1 Object oriented style

<?php  $mysqli = new mysqli("127.0.0.1", "user", "password", "world"  if($mysqli->connect_error) {     die("$mysqli->connect_errno: $mysqli->connect_error" } $query = "SELECT Name, Population, Continent FROM Country WHERE Continent=? ORDER BY Name LIMIT 1"; $stmt = $mysqli->stmt_init( if(!$stmt->prepare($query)) {     print "Failed to prepare statement\n"; } else {     $stmt->bind_param("s", $continent     $continent_array = array('Europe','Africa','Asia','North America'     foreach($continent_array as $continent)     {         $stmt->execute(         $result = $stmt->get_result(         while ($row = $result->fetch_array(MYSQLI_NUM))         {             foreach ($row as $r)             {                 print "$r ";             }             print "\n";         }     } } $stmt->close( $mysqli->close( ?>

Example #2 Procedural style

<?php  $link = mysqli_connect("127.0.0.1", "user", "password", "world"  if (!$link) {     $error = mysqli_connect_error(     $errno = mysqli_connect_errno(     print "$errno: $error\n";     exit( } $query = "SELECT Name, Population, Continent FROM Country WHERE Continent=? ORDER BY Name LIMIT 1"; $stmt = mysqli_stmt_init($link if(!mysqli_stmt_prepare($stmt, $query)) {     print "Failed to prepare statement\n"; } else {     mysqli_stmt_bind_param($stmt, "s", $continent     $continent_array = array('Europe','Africa','Asia','North America'     foreach($continent_array as $continent)     {         mysqli_stmt_execute($stmt         $result = mysqli_stmt_get_result($stmt         while ($row = mysqli_fetch_array($result, MYSQLI_NUM))         {             foreach ($row as $r)             {                 print "$r ";             }             print "\n";         }     } } mysqli_stmt_close($stmt mysqli_close($link ?>

上面的例子会输出:

Albania 3401200 Europe Algeria 31471000 Africa Afghanistan 22720000 Asia Anguilla 8000 North America