最大执行时间超过30秒

时间:2014-03-05 16:26:31

标签: php mysql database

我正在学习php MVC,在我的显示模型中,我遇到了这个致命的错误 致命错误:第36行的C:\xampp\htdocs\kowab\app\models\display.php超过了30秒的最长执行时间

第36行是$data = mysql_fetch_array($sql);

6 个答案:

答案 0 :(得分:2)

要删除此错误,您必须在max_execution_time中增加php.ini。之后你必须重新启动apache。

或者您在脚本顶部添加ini_set('max_execution_time', x)

但您应该首先考虑优化查询和代码。

答案 1 :(得分:2)

你是否正在观看阿拉伯语男子的教程? (阿里哈姆迪)

我经历了同样的事情,我用这种方式做了我对显示类的声明:

else
            {
                $num = mysql_num_rows($sql);
                while ($num > 0)
                    {
                        $data = mysql_fetch_array($sql);
                        $num--;
                    }
            }

        return $data;
    }

}

?>

它没有解决问题,但它至少带回了这个形式。所以我继续观看其余的教程并跟随他,以便稍后我解决这个问题。我写了他并等待他的回应。一旦他这样做,我会用解决方案回复你。

答案 2 :(得分:1)

通过制作第一行代码来延长执行时间:

set_time_limit($x);

$ x应该是运行脚本的最长时间(秒)。值为0将使脚本无限运行。

http://us1.php.net/set_time_limit

注意:您在第36行达到30秒的时间限制很奇怪,因此您的代码可能无法识别,因为您尚未发布

答案 3 :(得分:1)

set_time_limit($seconds);

the docs。如果您为0传递$seconds的值,则没有时间限制。

答案 4 :(得分:1)

您可以通过在 php.ini 中查找max_execution_time来增加时间,但在此之前您需要知道导致此问题的原因。检查您的查询可能有一些循环或它返回一个巨大的数据

答案 5 :(得分:1)

这是我的模特

//显示

class display extends awebarts {

public function __construct($tablename) {


         $this->tablename= $tablename;

         $this->connectToDb();

         $this->getData();

         $this->close();



}

function getData() {

   $query = "SELECT * FROM $this->tablename ORDER BY `ID` DESC LIMIT 1";

   if(!$sql = mysql_query($query))
   {
   throw new Exception (mysql_error());
   }
   else {
      $num= mysql_num_rows($sql);
      while($num >0)
      {
      $data= mysql_fetch_array($sql);
      }
   }
          return $data;
}

}

>``