在CodeIgniter中运行时出现nuSOAP库错误


nuSOAP library error when run in CodeIgniter

在运行nusoap 0.9.5时,我得到了这个错误

遇到PHP错误

严重性:警告

消息:尝试修改非对象的属性

文件名:nusoap/nusoap.php

行号:4694

我在搜索谷歌博士时发现了一个补丁,应该可以解决这个问题nusoap-version-0-9-5-修改非对象属性的尝试

尽管它在不是从CodeIgniter内部运行时解决了问题,但在我这样做的时候,它出现了一个新的错误

遇到PHP错误

严重性:通知

消息:未定义的偏移量:0

文件名:nusoap/nusoap.php

行号:4693

遇到PHP错误

严重性:通知

消息:未定义的偏移量:0

文件名:nusoap/nusoap.php

行号:4695

幸运的是Noah Eltzroth来自http://www.noaheltzroth.com/帮助我解决了这个问题

完成之后

为了解决这个问题,我修改了nusoap.php中的4694行:

$this->schemas[$ns]->imports[$ns2][$ii]['loaded'] = true;

对此:

$this->schemas[$ns][$ns2]->imports[$ns2][$ii]['loaded'] = true;

如果你仍然得到我在CodeIgniter中得到的相同错误,只需添加@operator来删除错误

即使脚本显示了错误,它也能工作,隐藏错误是可以的

if (! @$list2[$ii]['loaded']) {
    $this->schemas[$ns][$ns2]->imports[$ns2][$ii]['loaded'] = true;
    $url = @$list2[$ii]['location'];