Home  >  Article  >  Backend Development  >  关于zend soap解决办法

关于zend soap解决办法

WBOY
WBOYOriginal
2016-06-13 13:44:09839browse

关于zend soap
使用Zend_Soap_AutoDiscover自动生成的wsdl在windows下正常,同样的代码换到linux环境中就不行了,

XML code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap-enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" name="Bss_Mailservice" targetNamespace="http://split.bss.com/interface/index/mailservice">
<types>
<schema targetnamespace="http://split.bss.com/interface/index/mailservice"></schema>
</types>
<porttype name="Bss_MailservicePort">
<operation name="auth">
<documentation>auth</documentation>
<input message="tns:authIn">
</operation>
<operation name="send">
<documentation>send</documentation>
<input message="tns:sendIn">
</operation>
</porttype>
<binding name="Bss_MailserviceBinding" type="tns:Bss_MailservicePort">
<binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"></binding>
<operation name="auth">
<operation soapaction="http://split.bss.com/interface/index/mailservice#auth"></operation>
<input>
<body use="encoded" encodingstyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://split.bss.com/interface/index/mailservice"></body>

<output>
<body use="encoded" encodingstyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://split.bss.com/interface/index/mailservice"></body>
</output>
</operation>
<operation name="send">
<operation soapaction="http://split.bss.com/interface/index/mailservice#send"></operation>
<input>
<body use="encoded" encodingstyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://split.bss.com/interface/index/mailservice"></body>

<output>
<body use="encoded" encodingstyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://split.bss.com/interface/index/mailservice"></body>
</output>
</operation>
</binding>
<service name="Bss_MailserviceService">
<port name="Bss_MailservicePort" binding="tns:Bss_MailserviceBinding">
<address location="http://split.bss.com/interface/index/mailservice"></address>
</port>
</service>
<message name="authIn">
<part name="appkey" type="xsd:anyType"></part>
</message>
<message name="sendIn">
<part name="to" type="xsd:anyType"></part>
<part name="cc" type="xsd:anyType"></part>
<part name="bcc" type="xsd:anyType"></part>
<part name="subject" type="xsd:anyType"></part>
<part name="body" type="xsd:anyType"></part>
</message>



基中





这几个参数都应该是string类型,但在linux下生成的是anyType,另外我在方法的注释中己经写了返回值的注释,但也不管用
PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
   /**
     * 
     * 发送邮件
     * @param string $to
     * @param string $cc
     * @param string $bcc
     * @param string $subject
     * @param string $body
     * @return array
     * @throws SoapFault
     */
    public function send($to, $cc, $bcc, $subject, $body) {


请问这是怎么回事啊?
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn