PDO连接抛出超时错误

时间:2013-03-10 23:56:39

标签: php pdo include

我的PDO连接超时有问题,它不在一个循环中(这是我唯一一次看到时间超时)只是一个标准连接,然后我在一个循环中运行它。它给出的错误是:

Fatal error: Maximum execution time of 30 seconds exceeded in Connect.php on line 9

这是connect.php connect

这是我必须包含的内容 include

我也尝试了一次,print_r打印:

PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) PDO Object ( ) 
Fatal error: Maximum execution time of 30 seconds exceeded in Connect.php on line 9

所以显然存在某种联系,显然包含了变量。我也在其他php文件中使用过此代码,并且工作正常。来自所提供信息的任何想法?

第9行是设置$conn的地方

2 个答案:

答案 0 :(得分:1)

[评论扩展]由于print_r()正好在include下方运行多次,因此表明整个文件/代码块正在从代码上方的循环中多次运行。您可以尝试执行dump_backtrace()并查看代码实际来自哪里。

超时似乎发生在connect.php,因为您使用的是include而不是include_once,因此每次循环代码运行时,该文件也会被重新处理。

答案 1 :(得分:0)

为什么一遍又一遍地执行相同的查询。 你不想做这样的事情:

$stmt = $conn->query($your_query);
while(($result = $stmt->fetch()) !== false){
  // do something
}

代替?