gpt4 book ai didi

php - PDO 和嵌套抓取

转载 作者:搜寻专家 更新时间:2023-10-30 23:24:38 25 4
gpt4 key购买 nike

假设我有这样的东西:

$db=new PDO($dsn);

$statement=$db->query('Select * from foo');

while ($result=$statement->fetch())
{
//do something with $result
}

我如何将另一个查询放入那个 while 循环中?即使我创建了一个新的 PDOStatement 对象,它似乎也会覆盖最顶层 PDO 语句的游标。我看到的唯一其他解决方案是 a) 一次获取整个外部循环或 b) 打开 2 个不同的数据库连接。这些似乎都不是一个好主意,还有其他解决方案吗?

最佳答案

我会说,您应该能够在 while 循环中执行您想要的任何其他查询;像这样:

$db=new PDO($dsn);

$statement=$db->query('Select * from foo');

while ($result=$statement->fetch())
{
$statement2 = $db->query('Select * from bar');
while ($result2=$statement2->fetch()) {
// use result2
}
}

你试过了吗?它应该工作...


尽管如此,如果可以(我的意思是如果您的数据没问题),使用 JOIN 仅执行一个查询可能会更好地提高性能:1 个查询而不是多个查询通常更快。

关于php - PDO 和嵌套抓取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1347955/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com