楼主是用get方式得到的吗,记得好象get方式对字符串的大小有限制,可能是64KB,记得不太清楚了

解决方案 »

  1.   

    screend(流浪小子)说的对,大量数据要用post方式传递,字符串允许的长度很小,只有几k
      

  2.   

    不是的,我是用web service得到的
    对这个不是很懂,可能说的不对
    接收到的是个很大的字符串,是xml格式的
    然后我再用xml函数读取其中的数据
    问的是这个字符串有没有大小限制,为什么多到一定限度后就干脆什么数据都没得到了
    谢谢了
      

  3.   

    $wsdlurl = "http://接收web service的地址路径/aaa.asmx?WSDL";
    $WSDL = new SOAP_WSDL($wsdlurl) ;
    $client = $WSDL->getProxy() ;
    $RetailerIPAdress="255.255.255.255";  //随便写的ip地址,真实程序里不是这个
    $RetailerGUID ="aklsdjakljdlkadkmwq"; //同上$response = $client->ExportXml($RetailerIPAdress,$RetailerGUID);
        $parser = xml_parser_create();
        xml_parser_set_option($parser,XML_OPTION_CASE_FOLDING,0);
        xml_parser_set_option($parser,XML_OPTION_SKIP_WHITE,1);
        xml_parse_into_struct($parser,$response,$values,$tags);
        xml_parser_free($parser);
        print_r ($values);就是如上代码
    数据量比较小时可以打印出$values中的数据
    一旦数据超过一定限度,他就只打印Array()了
    谢谢各位了
      

  4.   

    没接触过SOAP_WSDL这个类,不过看你的源代码,问题应该出在$response = $client->ExportXml($RetailerIPAdress,$RetailerGUID);
    你先输出$response 看看问题是不是确实出在字符串。如果是最好能把ExportXml方法的代码贴出来