-1

该脚本在带有 nusoap 库的 php 4 上运行

require_once('nusoap/lib/nusoap.php');
ini_set("soap.wsdl_cache_enabled", "0");
$client = new soapclient("some-url",true);
$err = $client->getError();
if ($err) 
{
header("Location: error-page");
exit();
}

我的问题是:如果检测到错误,是否可以等待 1-2 秒(类似于 sleep(2); )然后尝试重新启用肥皂连接?并供将来参考......我怎样才能得到所有可能的错误并为他们构建案例?例如对于一些错误等待重新初始化连接,对于一些其他错误,记录到 db 原因,其余的只是重定向到一般错误页面。

4

1 回答 1

1

你知道如何编程,对吧?只需将代码放入循环中:

$retries = 3; // how many times to retry the connection
$sleep   = 2; // number of seconds to sleep in-between retries

$i = 1;
while (TRUE) {

    $client = new soapclient("some-url",true);

    if ( ! $client->getError()) {
        break; // break out of the loop on success
    } elseif ($i === $retries) {
        header("Location: error-page");
        exit();
    }

    sleep($sleep);
    ++$i;
}
于 2012-05-08T14:59:11.563 回答