MysqlndUhConnection::moreResults

(PECL mysqlnd-uh >= 1.0.0-alpha)

MysqlndUhConnection::moreResultsCheck if there are any more query results from a multi query

説明

public MysqlndUhConnection::moreResults ( mysqlnd_connection $connection ) : bool

Check if there are any more query results from a multi query.

パラメータ

connection

Mysqlnd connection handle. Do not modify!

返り値

Returns TRUE on success. Otherwise, returns FALSE

例1 MysqlndUhConnection::moreResults() example

<?php
class proxy extends MysqlndUhConnection {
 public function 
moreResults($res) {
  
printf("%s(%s)\n"__METHOD__var_export(func_get_args(), true));
  
$ret parent::moreResults($res);
  
printf("%s returns %s\n"__METHOD__var_export($rettrue));
  return 
$ret;
 }
}
mysqlnd_uh_set_connection_proxy(new proxy());

$mysqli = new mysqli("localhost""root""""test");
$mysqli->multi_query("SELECT 1 AS _one; SELECT 2 AS _two");
do {
  
$res $mysqli->store_result();
  
var_dump($res->fetch_assoc());
  
printf("%s\n"str_repeat("-"40));
} while (
$mysqli->more_results() && $mysqli->next_result());
?>

上の例の出力は以下となります。

array(1) {
  ["_one"]=>
  string(1) "1"
}
----------------------------------------
proxy::moreResults(array (
  0 => NULL,
))
proxy::moreResults returns true
proxy::moreResults(array (
  0 => NULL,
))
proxy::moreResults returns true
array(1) {
  ["_two"]=>
  string(1) "2"
}
----------------------------------------
proxy::moreResults(array (
  0 => NULL,
))
proxy::moreResults returns false

参考