PHP超时时的PHP运行函数
我正在编写一个脚本,服务器发送给我们,我们发送给服务器,理论上应该接收服务器的响应并回复给发送给我们的服务器。但是,有时我发布到的服务器没有响应。最大的问题是,发送给我们的服务器将假定交易成功完成,除非它听到其他消息。因此,本质上我需要一种方法,如果我从未收到来自我发布到的服务器的回复,那么我需要将响应发送回第一个服务器。我认为register_shutdown_函数可以为我工作,但我不知道如何设置它,所以它只能在出错或其他情况下运行PHP超时时的PHP运行函数,php,dll,Php,Dll,我正在编写一个脚本,服务器发送给我们,我们发送给服务器,理论上应该接收服务器的响应并回复给发送给我们的服务器。但是,有时我发布到的服务器没有响应。最大的问题是,发送给我们的服务器将假定交易成功完成,除非它听到其他消息。因此,本质上我需要一种方法,如果我从未收到来自我发布到的服务器的回复,那么我需要将响应发送回第一个服务器。我认为register_shutdown_函数可以为我工作,但我不知道如何设置它,所以它只能在出错或其他情况下运行 提前感谢register\u shutdown\u func
提前感谢
register\u shutdown\u function()
应该适合您。只需使用全局变量确定远程服务器是否响应:
<?php
function on_shutdown () {
if (!$GLOBALS['complete']) {
// Handle server not responding here
}
}
// Suppress "FATAL ERROR" message when time limit reached
error_reporting(0);
$complete = FALSE;
register_shutdown_function('on_shutdown');
// Code which posts to remote server here
$complete = TRUE;
您如何将数据发布到目标服务器?cURL?它是使用COM库(dll)发布的,我们发布到的服务器为我们提供了要运行的dll,我只是使用dllSo发布给他们。这是一个编译为PHP扩展的dll,它的函数有时永远不会返回?我觉得这是一个相当糟糕的扩展。不过,我想你对此无能为力。。。