4

我写了这段代码:

$stmt = $link->prepare($statement_string);

// [...]

$result_m = $stmt->result_metadata();
if ($result_m) {
  $stmt->store_result();

  // [...]

  $stmt->free_result();
  $result_m->free();
}

那个代码对吗?

我阅读了mysqli-stmt.result-metadatamysqli-result.free doc 文档。我还阅读了这篇文章:...free-mysql-result-after-storing-it但我没有找到答案。

编辑 :

我想知道的是:是否会$stmt->free_result();释放一些内存分配$stmt->store_result();或明确释放由mysqli_result构建的对象的内存$stmt->result_metadata();

4

1 回答 1

1

根据这些页面:

mysqli-免费结果

mysqli-stmt-free-result

元数据和实际语句数据(行)是不同的对象,因此您必须分别清除它们。

与您在代码中所做的完全一样。

于 2013-09-30T23:45:32.103 回答