错误超时,在 codeigniter 中使用 excel_reader 上传 excel 文件

Posted

技术标签:

【中文标题】错误超时,在 codeigniter 中使用 excel_reader 上传 excel 文件【英文标题】:Error time out, Upload excel file with excel_reader in codeigniter 【发布时间】:2015-09-27 04:06:12 【问题描述】:

我想通过codeigniter将excel文件上传到数据库。该项目已经使用小尺寸的 excel 文件运行。但是,如果我上传小的大尺寸的 excel 文件,它就无法运行。

问题是最大执行时间。这是错误信息:

Fatal error: Maximum execution time of 30 seconds exceeded in C:\xampp\htdocs\bisabisa\system\database\drivers\mysqli\mysqli_driver.php on line 221
A PHP Error was encountered

Severity: Error

Message: Maximum execution time of 30 seconds exceeded

Filename: mysqli/mysqli_driver.php

Line Number: 221

Backtrace:

当我打开 mysqli_driver.php 第 221 行时,代码如下:

protected function _execute($sql)
    
        return $this->conn_id->query($this->_prep_query($sql));
    

它没有与它们命名执行时间或关系词的代码。

那么,我要更改什么文件?

我使用 xampp 和 phpmyadmin。如果我从 phpmyadmin 上传文件,它可以运行。

【问题讨论】:

set_time_limit(360); 我必须用该代码更改什么文件? 它们中的任何一个都可以工作,最好是从第一次调用它的地方,360 秒,尽管你也可能会耗尽内存。 但是在mysqli_driver.php中,没有set_time_limit的代码。 我必须更改哪个文件? 【参考方案1】:

进行以下更改以解决您的问题:

在 system/core/CodeIgniter.php 的第 103 行

if (function_exists("set_time_limit") == TRUE AND @ini_get("safe_mode") == 0)

    @set_time_limit(300);

我尝试更改值并且它有效。

【讨论】:

以上是关于错误超时,在 codeigniter 中使用 excel_reader 上传 excel 文件的主要内容,如果未能解决你的问题,请参考以下文章

Codeigniter 服务器超时 - 在 for 循环中运行批量数据库查询

无法从 codeigniter paypal 库获得 curl 响应 [关闭]

mysql_query("START TRANSACTION")- 超过锁定等待超时;尝试在 Codeigniter Mysql 中重新启动事务

在 Codeigniter 3 中通过 Office365 帐户发送电子邮件 - 连接超时

Codeigniter:太多的 ajax 调用导致 Web 应用程序超时

如何设置 CodeIgniter 忽略 Wordpress 文件夹?