array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'uk', ), 'this' => array ( 0 => 'mysqli.store-result.php', 1 => 'mysqli::store_result', 2 => 'Transfers a result set from the last query', ), 'up' => array ( 0 => 'class.mysqli.php', 1 => 'mysqli', ), 'prev' => array ( 0 => 'mysqli.stmt-init.php', 1 => 'mysqli::stmt_init', ), 'next' => array ( 0 => 'mysqli.thread-id.php', 1 => 'mysqli::$thread_id', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'en', 'path' => 'reference/mysqli/mysqli/store-result.xml', ), 'history' => array ( ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); contributors($setup); ?>
(PHP 5, PHP 7, PHP 8)
mysqli::store_result -- mysqli_store_result — Transfers a result set from the last query
Об'єктно-орієнтований стиль
Процедурний стиль
Transfers the result set from the last query on the database connection
represented by the mysql
parameter to be used with
the mysqli_data_seek() function.
mysql
Тільки процедурний стиль: об'єкт mysqli, якого повертає функція mysqli_connect() або mysqli_init()
mode
The option that you want to set. As of PHP 8.1, this parameter has no effect. It can be one of the following values:
Name | Description |
---|---|
MYSQLI_STORE_RESULT_COPY_DATA |
Copy results from the internal mysqlnd buffer into the PHP variables fetched. By default, mysqlnd will use a reference logic to avoid copying and duplicating results held in memory. For certain result sets, for example, result sets with many small rows, the copy approach can reduce the overall memory usage because PHP variables holding results may be released earlier (available with mysqlnd only) |
Returns a buffered result object or false
if an error occurred.
Зауваження:
mysqli_store_result() returns
false
in case the query didn't return a result set (if the query was, for example an INSERT statement). This function also returnsfalse
if the reading of the result set failed. You can check if you have got an error by checking if mysqli_error() doesn't return an empty string, if mysqli_errno() returns a non zero value, or if mysqli_field_count() returns a non zero value. Also possible reason for this function returningfalse
after successful call to mysqli_query() can be too large result set (memory for it cannot be allocated). If mysqli_field_count() returns a non-zero value, the statement should have produced a non-empty result set.
Якщо увімкнені звіти про помилки
mysqli (MYSQLI_REPORT_ERROR
) і запитана операція не
виконалась, буде виведено попередження, але якщо встановлено режим
MYSQLI_REPORT_STRICT
, буде викинуто виключення
mysqli_sql_exception.
Версія | Опис |
---|---|
8.4.0 |
Passing the mode parameter is now deprecated.
The parameter has had no effect as of PHP 8.1.0.
|
See mysqli_multi_query().
Зауваження:
Although it is always good practice to free the memory used by the result of a query using the mysqli_free_result() function, when transferring large result sets using the mysqli_store_result() this becomes particularly important.