php8.5
Home/ Manual/ mysqli / mysqli_result/ mysqli_result::fetch_all

mysqli_result::fetch_all

PHP function Edit on GitHub ✎

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

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

Description

Oop

mysqli_result::fetch_all(int $mode = MYSQLI_NUM): array

Procedural

mysqli_fetch_all(mysqli_result $result, int $mode = MYSQLI_NUM): array

Returns a two-dimensional array of all result rows as an associative array, a numeric array, or both.

Note

Prior to PHP 8.1.0, available only with mysqlnd.

Parameters

mode

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.

Changelog

VersionDescription
8.1.0Now also available when linking against libmysqlclient.

Examples

mysqli_result::fetch_all example

Oop

php
<?php

mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

$result = $mysqli->query("SELECT Name, CountryCode FROM City ORDER BY ID LIMIT 3");

$rows = $result->fetch_all(MYSQLI_ASSOC);
foreach ($rows as $row) {
    printf("%s (%s)\n", $row["Name"], $row["CountryCode"]);
}

Procedural

php
<?php

mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = mysqli_connect("localhost", "my_user", "my_password", "world");

$result = mysqli_query($mysqli, "SELECT Name, CountryCode FROM City ORDER BY ID LIMIT 3");

$rows = mysqli_fetch_all($result, MYSQLI_ASSOC);
foreach ($rows as $row) {
    printf("%s (%s)\n", $row["Name"], $row["CountryCode"]);
}

Outputs

output
Kabul (AFG)
Qandahar (AFG)
Herat (AFG)

See Also

Source: reference/mysqli/mysqli_result/fetch-all.xml · from the official PHP manual (php/doc-en)