Php 如何将MySQLi prepared语句的所有结果作为关联数组获取?

Php 如何将MySQLi prepared语句的所有结果作为关联数组获取?,php,mysql,mysqli,Php,Mysql,Mysqli,如何从MySQLi prepared语句中以关联数组的形式获取所有结果,而无需一次循环一行 举个例子: $results_st = $dbi->prepare("SELECT * FROM foobar"); $results_st->execute(); $results = $results_st->get_results(); // I would like something like: $results_ar = $results->fetch_all(MYS

如何从MySQLi prepared语句中以关联数组的形式获取所有结果,而无需一次循环一行

举个例子:

$results_st = $dbi->prepare("SELECT * FROM foobar");
$results_st->execute();
$results = $results_st->get_results();

// I would like something like:
$results_ar = $results->fetch_all(MYSQLI_ASSOC);

// this should print out all the results in an associate array.
print_r($results_ar);
所需输出类似于mysqli_fetch_all(mysqli_ASSOC)

使用
fetch\u assoc()


当然,这只会获取一行?它返回一个表示所获取行的字符串的关联数组。@David您如何想象一个包含许多记录的关联数组?@YourCommonSense类似于mysqli_fetch_all(mysqli_ASSOC)的工作原理:@David,那么您的代码中已经有这个函数了。问题是什么?这个问题对我来说毫无意义。注意把这样一个虚构的函数输出到期望的输出上吗?在另一个注释中,考虑使用PDO代替MySQL,因为它提供了返回的功能。
Array (
   [0] => (
      'title' => cat,
      'id' => 1
      ),
   [1] => (
      'title' => dog,
      'id' => 2
      ),
   [2] => (
      'title' => bird,
      'id' => 3
      )
);
$data = $result->fetch_assoc()