--TEST-- mysqli_fetch_all() --EXTENSIONS-- mysqli --SKIPIF-- --FILE-- getMessage() . \PHP_EOL; } mysqli_free_result($result); try { mysqli_fetch_array($result, MYSQLI_ASSOC); } catch (Error $exception) { echo $exception->getMessage() . "\n"; } print "done!"; ?> --CLEAN-- --EXPECT-- Default mode array(2) { [0]=> array(2) { [0]=> string(1) "1" [1]=> string(1) "a" } [1]=> array(2) { [0]=> string(1) "2" [1]=> string(1) "b" } } Mode: MYSQLI_NUM array(2) { [0]=> array(2) { [0]=> string(1) "1" [1]=> string(1) "a" } [1]=> array(2) { [0]=> string(1) "2" [1]=> string(1) "b" } } Mode: MYSQLI_BOTH array(2) { [0]=> array(4) { [0]=> string(1) "1" ["id"]=> string(1) "1" [1]=> string(1) "a" ["label"]=> string(1) "a" } [1]=> array(4) { [0]=> string(1) "2" ["id"]=> string(1) "2" [1]=> string(1) "b" ["label"]=> string(1) "b" } } Mode: MYSQLI_ASSOC array(2) { [0]=> array(2) { ["id"]=> string(1) "1" ["label"]=> string(1) "a" } [1]=> array(2) { ["id"]=> string(1) "2" ["label"]=> string(1) "b" } } mysqli_fetch_all() after fetching array(0) { } [017] array(1) { [0]=> array(11) { [0]=> string(1) "1" ["a"]=> string(1) "2" [1]=> string(1) "2" [2]=> string(1) "3" ["c"]=> string(1) "3" [3]=> string(1) "4" ["C"]=> string(1) "4" [4]=> NULL ["d"]=> NULL [5]=> string(1) "1" ["e"]=> string(1) "1" } } mysqli_fetch_all(): Argument #2 ($mode) must be one of MYSQLI_NUM, MYSQLI_ASSOC, or MYSQLI_BOTH mysqli_result object is already closed done!