解决方案 »

  1.   

    simplexml_load_file 返回是object,你需要轉為array才可以。
    $param=simplexml_load_file('a.xml');
    objectToArray($param);
     $result = $client->__soapCall("GetInfo",$param);   /** object 转 Array 
        * @param  object $object 
        * @return Array 
        */  
         function objectToArray(&$object){  
              
            $object = (array)$object;  
              
            foreach($object as $key => $value){  
                if($value==''){  
                    $object[$key] = "";  
                }else{  
                    if(is_object($value) || is_array($value)){  
                        objectToArray($value);  
                        $object[$key] = $value;  
                    }  
                }  
            }  
          
        }
      

  2.   

    出错信息表示
    $result = $client->__soapCall("GetInfo",$param);
    中的 $param 不是数组而是对象
    即便是如 #3 那样转换成数组,也是不行的
    如果 WSDL 中要求是 xml,那么其实就是一个 XML 串
    $param = file_get_contents('a.xml');
    即可