Ciao a tutti, ho creato un webservice di prova con Visual Web Developer Express, di cui riporto il codice:
L'ho utilizzato in una pagina ASP.NET e in un software scritto in C# e funziona benissimo. Non riesco però ad utilizzarlo con PHP5. Ecco il codice della mia pagina PHP:codice:using System; using System.Web; using System.Web.Services; using System.Web.Services.Protocols; [WebService(Namespace = "http://qmatteoq.altervista.org", Description = "Servizio per la moltiplicazione per 2 di un numero")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] public class Service : System.Web.Services.WebService { public Service () { //Rimuovere il commento dalla riga seguente se si utilizzano componenti progettati //InitializeComponent(); } [WebMethod] public string HelloWorld() { return "Hello World"; } [WebMethod(Description="Metodo di moltiplicazione per 2")] public double Moltiplica(double numero) { return numero * 2; } }
Il problema è che come risultato ottengo la criptica stringa "Object ID #2". Ho provato a sostituire nel codice PHP il mio Web Service con un altro e funziona. Cosa c'è che non va nel mio?codice:<?php $client=new SoapClient('http://localhost:2288/WebService/Service.asmx?WSDL'); $numero=5; $return = $client->Moltiplica($numero); print $return; ?>