php - 如何在 PHP 中处理 mysql sleep 查询的异常?

标签 php mysql

我在 PHP 中使用下面的 sleep mysql 查询。

select sleep(50);

需要 50 秒才能完成。 PHP 页面正在加载直到 50 秒。这里我想在PHP页面中抛出异常。如何才能实现这一目标?

最佳答案

如果你想在30秒后停止脚本,可以使用set_time_limit(30),并且可以使用register_shutdown_function()来处理由于时间到期而退出的脚本:

<?php
set_time_limit(30);
$script_finished = false;
register_shutdown_function('is_finished');
function is_finished(){
global $script_finished;
if(!$script_finished){
//Script got interrupted 
echo "Oh, this script takes too much to complete!";
}
}
//Your code here
//...
//...
sleep(50); //For example

//Right before ending of php tag, script has ended
//Don't through is_finished function
$script_finished = true;
?>

关于php - 如何在 PHP 中处理 mysql sleep 查询的异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38734563/

相关文章:

PHP - 无法将 URL 查询字符串传递给模型以进行数据库查询

php - 为 foreach() "Invalid Argument"提供的参数无效

mysql - 通过 LEAD/LAG 或递归 CTE 更新?

php - PHP中有垃圾收集吗?

php - 带 HTTP1.1 的 SQL 插入

PHP 脚本从 POST 返回 responseText 到 AJAX?想要使用 Ajax POST 返回消息

php - 将 3 个表的结果与 MAX(date) 合并

sql - 跨多个表的分层子查询可以引用父查询吗?

php - 我正在尝试从行中获取数据以匹配定义的列

php - 在 PhpSpreadsheet 中读取 Xlsx 文件