Наш чат в Telegram для обмена идеями, проектами, мыслями, людьми в сфере ИТ г.Ростова-на-Дону: @it_rostov

mysqli_use_result

(PHP 5)

mysqli_use_result

mysqli->use_result - Начать поиск результатов запроса.


Процедурный стиль вызова:

mysqli_result mysqli_use_result ( mysqli link )

Объектно-ориентированный стиль вызова (method):

class mysqli {
mysqli_result use_result ( void )
}

mysqli_use_result() используется, чтобы начать поиск результатов запроса из последних запросов выполняется с помощью mysqli_real_query() function on the database connection specified by the link parameter. Either this or the mysqli_store_result() Функция должна вызываться до получения результатов запроса can be retrieved, and one or the other must be called to prevent the next query on that database connection from failing.

Замечание: The mysqli_use_result() function does not transfer the entire result set from the database and hence cannot be used functions such as mysqli_data_seek() to move to a particular row within the set. To use this functionality, the result set must be stored using mysqli_store_result(). One should not use mysqli_use_result() if a lot of processing on the client side is performed, since this will tie up the server and prevent other threads from updating any tables from which the data is being fetched.

Возвращаемые значения

Returns an unbuffered result object or FALSE if an error occurred.

Примеры

Пример 1. Объектно-ориентированный стиль вызова
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query  = "SELECT CURRENT_USER();";
$query .= "SELECT Name FROM City ORDER BY ID LIMIT 20, 5";

/* execute multi query */
if ($mysqli->multi_query($query)) {
    do {
        /* store first result set */
        if ($result = $mysqli->use_result()) {
            while ($row = $result->fetch_row()) {
                printf("%s\n", $row[0]);
            }
            $result->close();
        }
        /* print divider */
        if ($mysqli->more_results()) {
            printf("-----------------\n");
        }
    } while ($mysqli->next_result());
}

/* close connection */
$mysqli->close();
Пример 2. Процедурный стиль вызова
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query  = "SELECT CURRENT_USER();";
$query .= "SELECT Name FROM City ORDER BY ID LIMIT 20, 5";

/* execute multi query */
if (mysqli_multi_query($link, $query)) {
    do {
        /* store first result set */
        if ($result = mysqli_use_result($link)) {
            while ($row = mysqli_fetch_row($result)) {
                printf("%s\n", $row[0]);
            }
            mysqli_free_result($result);
        }
        /* print divider */
        if (mysqli_more_results($link)) {
            printf("-----------------\n");
        }
    } while (mysqli_next_result($link));
}

/* close connection */
mysqli_close($link);

Результат выполнения данного примера:

my_user@localhost ----------------- Amersfoort Maastricht Dordrecht Leiden Haarlemmermeer

Смотрите также: mysqli_real_query() и mysqli_store_result().

Все функции mysql
Описание на ru2.php.net
Описание на php.ru