Curs valutar cu PHP si SOAP de pe infovalutar.ro

Share on:

Siteul www.infovalutar.ro pune la dispozitie cursul oficial BNR si BCE in diferite formare pentru programatori. Printre aceste formate este si Web Service (SOAP), pentru care nu exista decat un exemplu in C#.

Zilele trecute am avut nevoie de un mic exemplu de SOAP, din pacate nu am reusit sa fac pe moment clientul sa mearga, iar cum in seara asta am avut putin timp liber am vrut sa-i dau de cap.

De fapt nu este chiar atat de complicat:

 1// obiectul SOAP
 2$client = new SoapClient("http://www.infovalutar.ro/curs.asmx?WSDL");
 3
 4// metoda cu data ultimei actualizari
 5$result = $client->lastdateinserted();
 6
 7// pentru afisare apelam singura proprietate pe care o are obiectul intors
 8echo 'Data ultimei actualizari: '.$result->LastDateInsertedResult.PHP_EOL;
 9
10// apelam o metoda cu un parametru
11$result = $client->GetLatestValue(array('Moneda'=>'EUR'));
12
13// afisam cursul apeland singura proprietate pe care o are obiectul intors
14echo 'Euro: '.$result->GetLatestValueResult.PHP_EOL;
15
16// apelam o metoda cu un parametru
17$result = $client->GetLatestValue(array('Moneda'=>'USD'));
18
19// afisam cursul apeland singura proprietate pe care o are obiectul intors
20echo 'USD: '.$result->GetLatestValueResult.PHP_EOL;

Chestile care mi se par ciudate sunt: metodele care au parametrii au nevoie in parametru de un array cu tip si valoare, iar obiectul intors are o singura proprietate. Practic de la aceste doua lucruri m-am pierdut eu.

Dar acum ca este gata putem sa ne uitam linistiti cat de mult a crescut euro.