PHP 7,mysqli,参考:如何使用 bind_result 与 get_result 的示例
我正在使用无缓冲提取(我希望)并且想知道内存消耗$m
。当我只是获取(测试用例)时,我希望内存$m
几乎是恒定的。但事实并非如此,这取决于我获取的行数会增加。我希望获取结果的工作方式就像一个游标一次只能获取 1 行。
我将如何实现这一点(一次读取 1 行)?
备注:这里https://stackoverflow.com/a/14260423/356726他们使用
$uresult = $mysqli->query("SELECT Name FROM City", MYSQLI_USE_RESULT);
但我还没有找到MYSQLI_USE_RESULT
在准备好的声明中传递某处的方法。
$result = $stmt->get_result(); // not stored I hope
$i = 0;
while ($row = $result->fetch_assoc()) {
$i++;
if ($i > 20000) {
break;
}
}
$m = memory_get_usage(); // see values between 10-50MB here, depending on i
$this->freeAndCloseStatement($stmt);