Kolayca PHP bir web hizmeti tüketmek nasıl

5 Cevap php

Bir web service dayalı tüketen kodu oluşturmak için kullanılan PHP için herhangi bir araç var kullanılabilir mi onun WSDL? Visual Studio veya Java için aynı şeyi yapar Eclipse eklentisi "Add Web Reference" tıklayarak karşılaştırılabilir bir şey.

5 Cevap

I wsdl2php ile büyük başarı elde ettik. Bu otomatik olarak web hizmetinde kullanılan tüm nesneler ve yöntemler için sarıcı sınıflar oluşturmak olacaktır.

PHP 5 web servis işlevleri çağırmak için WSDL SoapClient kullanabilirsiniz. For example,

$client = new SoapClient("some.wsdl");

ve $ istemcisi artık some.wsdl tanımlanan sınıf yöntemleri olan bir nesnedir. Yani WSDL getTime denilen bir yöntem olup olmadığını o zaman sadece çağırır:

$result = $client->getTime();

Ve bunun sonucu (tabii ki) $ sonuç değişkeni olacaktır. Tüm yöntemlerden bir listesini döndürmek için __ getFunctions yöntemini kullanabilirsiniz.

Ben geçmişte NuSOAP kullandık. Eğer içerebilir PHP dosyalarının sadece bir dizi olduğu için ben onu sevdim. Web sunucusuna yüklemek için hiçbir şey ve değiştirmek için hiçbir yapılandırma seçenekleri yoktur. Bu bonus olan yanı WSDL desteği vardır.

Peki, bu özellikler bu dillerde gelişmesi için kullandığınız bir araç özgüdür.

(Örneğin) kod yazmak için not defterini kullanarak sanki bu araçlar olmazdı. Yani, belki kullandığınız aracı için soru sormak gerekir.

PHP için: http://webservices.xml.com/pub/a/ws/2004/03/24/phpws.html

Bu article Eğer bir API, web hizmetini çağırmak PHP SoapClient nasıl kullanabileceğinizi açıklar.