我试着用异步查询做一些测试。我得到这个结果:
Array ( [0] => 2017-11-28 11:34:01 [1] => 50 )
Warning: mysqli::reap_async_query(): Connection not opened, clear or has been closed in /var/www/testasync.php on line 24.
我在任何地方都找不到关于这个警告的任何信息。我不会关闭我的连接,直到我的代码结束。这是什么意思?
这是我的密码:
<?php
$connect = mysqli_connect("localhost", "user", "password", "test");
if (!$connect) {
die('Could not connect: ' . mysqli_error($connect));
}
// Queries
$sql0 = "SELECT * FROM flow01 where datetime = (select min(datetime) from flow01)";
mysqli_query($connect, $sql0, MYSQLI_ASYNC);
$sql1 = "SELECT * FROM flow01 where datetime = (select max(datetime) from flow01)";
mysqli_query($connect, $sql1, MYSQLI_ASYNC);
$sql2 = "SELECT * FROM hum01 where datetime = (select min(datetime) from hum01)";
mysqli_query($connect, $sql2, MYSQLI_ASYNC);
$sql3 = "SELECT * FROM hum01 where datetime = (select max(datetime) from hum01)";
mysqli_query($connect, $sql3, MYSQLI_ASYNC);
// Results
$i = 0;
foreach ($connect as $result) {
if ($result = $connect->reap_async_query()) {
print_r($result->fetch_row());
mysqli_free_result($result);
$i++;
}
}
mysqli_close($connect);
?>
1条答案
按热度按时间fzsnzjdm1#
万一有人来找我的答案,我会把我用mysqli\u poll做的代码贴出来。
结果如下:
编辑:它似乎拉在任何顺序的结果,他们来这意味着他们往往是无序的。我尝试向表中添加另一列,其中包含一个数字以指示它是什么表,然后我可以在显示结果之前对结果进行排序。如果有人知道更好的方法让我知道。