首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果在抓取过程中连接丢失,mysql_fetch_array会失败吗?

问如果在抓取过程中连接丢失,mysql_fetch_array会失败吗?
EN

Stack Overflow用户
提问于 2012-12-12 01:00:32
回答 1查看 410关注 0票数 2

我想要多次遍历我的查询结果,我有两种方法:

代码语言:javascript
复制
1-        
while($data = mysql_fetch_array($res ,  MYSQL_ASSOC)
{
array_push($new_arr , $data);
}
foreach($sites as $s){
  foreach($new_arr as $d)
  {
  //some code
  }
}

2-
foreach($sites as $s){
  while($data = mysql_fetch_array($res ,  MYSQL_ASSOC)
  {
  //some code
  }
mysql_data_seek($res,0);//set the pointer 
}

我的问题是:我认为选项2更有效,但是如果我在mysql_fetch_array(选项2)期间失去了与数据库的连接,该怎么办?我得到了很多结果;这大约需要10-20分钟。这会影响查询结果($res)还是它们是安全的?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-12 01:07:15

当您执行mysql_query()时,数据被映射到mysql客户机分配的缓冲区中,因此断开连接是无关紧要的。您引用的第一种方法将以PHP数组的形式创建数据的另一个副本-效率不是很高。

另外,WTF是嵌套循环($sites)做的吗?看起来要么你的数据没有正规化,要么你的算法很糟糕。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13824908

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档