我怎么知道php脚本失败的原因?

时间:2013-09-09 22:16:40

标签: php wordpress scheduled-tasks

我正在运行一个Wordpress网站,我将帖子从非WP网站迁移到Wordpress网站。我正在迁移的网站有大约5000个帖子,所以我创建了一个工具,我使用wp_schedule_single_event()从管理区域启动。该事件触发并启动正常,并且在获取帖子或插入帖子时没有问题。

然而,大约12分钟后,该过程失败,并且不会报告任何致命错误。有人能告诉我如何调试该进程,因为它在wp-cron下运行吗?我已将以下内容添加到我的脚本中,但它没有报告和警告或错误:

set_time_limit(0); // no time limit
error_reporting(-1); // log everything
ini_set('log_errors', true);
ini_set('memory_limit', -1); // no memory limit
ignore_user_abort(true);

我知道其他人也提过类似的问题,但他们的决议并没有帮助我。

1 个答案:

答案 0 :(得分:1)

这可能是相当多的问题,超时,数据库异常等等。您可以使用try / catch块。 try块将保存您的代码,catch块将用于在抛出异常时处理异常。

以下示例:

try {
    // your code goes here
} catch (Exception $e) {
    // log/print error
    print $e->getMessage();
}

指定为catch param的Exception类是基类,因此它将捕获每个异常,这可能是您想要的情况。

有关例外情况的更多信息:http://php.net/manual/en/language.exceptions.php