Documentation Home
Download this Manual
PDF (US Ltr) - 2.4Mb
PDF (A4) - 2.4Mb

MySQL PHP API  /  ...  /  mysqli_result::fetch_all, mysqli_fetch_all

3.10.3 mysqli_result::fetch_all, mysqli_fetch_all

Copyright 1997-2022 the PHP Documentation Group.

  • mysqli_result::fetch_all


    Fetches all result rows as an associative array, a numeric array, or both


Object oriented style

public array mysqli_result::fetch_all(int mode= =MYSQLI_NUM);

Procedural style

array mysqli_fetch_all(mysqli_result result,
                       int mode= =MYSQLI_NUM);

mysqli_fetch_all fetches all result rows and returns the result set as an associative array, a numeric array, or both.



Procedural style only: A result set identifier returned by mysqli_query, mysqli_store_result or mysqli_use_result.


This optional parameter is a constant indicating what type of array should be produced from the current row data. The possible values for this parameter are the constants MYSQLI_ASSOC, MYSQLI_NUM, or MYSQLI_BOTH.

Return Values

Returns an array of associative or numeric arrays holding result rows.

MySQL Native Driver Only

Available only with mysqlnd.

As mysqli_fetch_all returns all the rows as an array in a single step, it may consume more memory than some similar functions such as mysqli_fetch_array, which only returns one row at a time from the result set. Further, if you need to iterate over the result set, you will need a looping construct that will further impact performance. For these reasons mysqli_fetch_all should only be used in those situations where the fetched result set will be sent to another layer for processing.

See Also