我通过在NUSOAP 0.7.3和PHP 4.4.9上运行的webservice接收结果。 XML请求被反序列化为一个数组,该数组包含一个包含URL的元素:
我可以很好地回复这个URL,但是一旦我尝试执行任何操作,例如作为函数的参数赋值,我的脚本就会失败。
该问题似乎与VID值的长度和字符有关。 如果我将值缩短为例如'2MAAAAJc2NyZWVuaW5nDTc2ZjVlN'并删除正斜杠和等号,最后工作正常。那么VID的值是否有最大长度,是否应该在xml请求中发送之前对查询字符串进行编码?
提前致谢。
答案 0 :(得分:0)
尝试使用urlencode()将VID传递给您的函数,然后在函数端取消编码。没有看到你的功能,我就不能再具体了。
$var = urlencode("VID=/////2MAAAAJc2NyZWVuaW5nDTc2ZjVlNTY3LWVmODUxAAAAAAA=");
someFunction($var)
{
$url = "http://results-demo.talegent.co.nz/DesktopModules/PlatformRateVideo.aspx?VID=".urldecode($var);
}
参见PHPFiddle:http://phpfiddle.org/main/code/vfi-yee
答案 1 :(得分:0)
通过在问号上展开URL并对结果数组进行全球化而不是传递给作为参数的函数来解决问题。不漂亮,但它有效。