【发布时间】:2012-07-07 05:18:57
【问题描述】:
我试图强制 PHP 永远不要尝试通过以下方式连接和发送信息到 web 服务 一段固定的时间。我在下面使用,由于某种原因,它会在允许的时间内运行,我不知道为什么。例如,如果我将其设置为 30 秒,我会发现在某些情况下需要更长的时间。如果需要的时间太长,我需要找到一种 100% 终止连接的方法。
TIA, 会
$intTimeout = $this->getTimeout(); $client = new SoapClient("{$this->url}?WSDL", array('trace' => 0, 'connection_timeout'=>$intTimeout)); 尝试 { $this->response = $client->someService($objPerson); } 捕获(异常 $e){ } $this->restoreTimeout(); 函数getTimeout() { $intTimeout = @$this->timeout ? $this->timeout : 60; $_SESSION['old_sock'] = ini_get('default_socket_timeout'); ini_set('default_socket_timeout', $intTimeout); 返回 $intTimeout; } 函数恢复超时() { $intCurSockTime = @$_SESSION['old_sock']; if($intCurSockTime) ini_set('default_socket_timeout', $intCurSockTime); }【问题讨论】:
标签: php web-services