admin 管理员组

文章数量: 893893

php soap 加符号报错,php soap错误获取http标头

我正在开发一个

PHP脚本,它通过SOAP连接处理大量数据.如果脚本没有遇到任何错误,则估计脚本的总运行时间为几天.我遇到的问题是脚本将运行一段时间,从一小时到一天,然后SOAP连接将死于错误“错误获取http标头”.

我见过很多文章建议增加default_socket_timeout设置,我试过这个.它没有帮助.我知道它正在工作,因为它在失败之前至少进行了一百次成功的调用.有什么办法可以阻止这个错误吗?

更新

我打印出请求和响应标头,希望在那里看到错误.但它看起来很好:

HTTP/1.1 200 OK

Date: Wed, 25 Sep 2013 21:00:12 GMT

Server: Apache/2.2.15 (CentOS)

X-Powered-By: PHP/5.3.3

Content-Length: 516

Connection: close

Content-Type: text/xml; charset=UTF-8

就示例代码而言,实际脚本很疯狂,但基本前提是:

ini_set('default_socket_timeout', 120);

$client = new SoapClient($wsdl,array(

'trace' =>true,

'connection_timeout' => 500000,

'cache_wsdl' => WSDL_CACHE_BOTH,

'keep_alive' => true,

));

while(!$finished) {

$finished = $client->someSoapFunction($data);

}

someSoapFunction()将返回100个连接的有效数据,然后随机返回上面的错误.它运行的时间少于任何一个设置的超时.我的php或apache错误日志中没有错误.我很难过.

本文标签: php soap 加符号报错 php soap错误获取http标头