September, 2008

Preluarea cursului BNR în mai puţin de 10 linii de cod

Azi am fost nevoit să preiau cursul valutar de pe site-ul bnr pentru a-l stoca în baza de date.  Ştiu că erau pe nu ştiu ce site-uri puse la dispoziţie coduri care fac treaba asta, însă după mine într-o manieră foarte alandala. După mine cel mai simplu de parsat un fişier xml (cum este cel pus la dispoziţie de bnr) este folosind extensiile puse la dispoziţie de php, SimpleXML şi DOM. Eu am ales să folosesc DOM, deoarece rezolvă foarte repede ceea ce am avut nevoie.

Structura fişierului xml care trebuie parsat este urătoarea:

[sourcecode language='xml']



National Bank of Romania
2008-09-25
DR


Reference rates
RON

2.0985
1.8802
2.4202
2.3059
0.1505
0.4930
0.4583
3.6773
4.6475
1.5275
2.3608
0.2414
0.4452
1.1040
0.1000
0.3800
0.1214
2.0194
2.5001
71.4560
3.9396


[/sourcecode]

(evident documentul nu este valid, dar nu ne interesează asta :P )

După cum se observă, ce trebuie noi să facem este preluarea tuturor tagurilor cu numele „Rate”.  Apoi preluăm  numele valutei folosind metoda getAttribute, care returnează valoarea atributului cu numele specificat.

Iată codul care pune în aplicare cele spuse mai sus:

[sourcecode language='php']

/*
* initiez clasa DOMDocument, reprezentand fisierul xml incarcat
*/
$dom = new DOMDocument();
/*
* incarc fisierul xml, specificand adresa completa
*/
$dom->load( “http://www.bnro.ro/nbrfxrates.xml” );

/*
* preiau intr-un obiect iterabil lista elementelor(tagurile) cu numele specificat
*/
$valute = $dom->getElementsByTagName(‘Rate’);

/*
* verific daca sunt elemente de acest tip
*/
if ( $valute->length != 0 )
{
/*

* in caz afirmativ, iterez prin ele si le afiez

* ( evident le pot stoca intr-un array sau chiar in baza de date,

* dupa caz)
*/
foreach ( $valute as $valuta )
{
echo $valuta->getAttribute(currency). ” – ” .$valuta->nodeValue . “
“;
}
}

[/sourcecode]

Dacă nu punem la socoteală, liniile comentate, putem prelua codul bnr în doar 8 linii de cod ! În acelaşi mod se pot prelua şi diferite feed-uri de pe diverse site-uri. Baftă ;)

Tags: , , , ,
Posted in Articole, PHP 2 Comments »

Editorul perfect

Pentru mine editorul perfect ar trebui să aibă următoarele caracteristici:

  • syntax highlight
  • inteligent automatic brace/square brackets/parenthesis and single/double quotes closing
  • file explorer
  • brace/parentheses block highlight
  • phpDoc support
  • ftp support

şi cam atât. Cer prea mult? Nu cred. Singurul care s-ar apropia de cerinţele acestea ar fi Eclipse (pdt) însă este IDE (!!!) şi nu are nici suport ftp.

Eu nu ştiu un asemenea editor. Voi aveţi vreo idee?

Tags:
Posted in Diverse No Comments »

Concert ARMADA pe 5 Octombrie în Suburbia !

ARMADA = C.T.C., Cedry2k, Carbon, Aforic, Nwanda, Dj Paul, Dj Grand

afiş

afiş

Meet you there ;)

Tags: , , , , ,
Posted in Evenimente, Hip Hop, Recomand 1 Comment »

TV.com îşi schimbă design-ul

TV.com, principalul site dedicat serialelor TV, a anunţat că de săptămâna viitoare îşi va schimba design-ul, oferind publicului şi nişte screenshot-uri.

screen1

frontdoor

video

video

showspace

showspace

Pe lângă design-ul îmbunătăţit şi aerisit, noul site va fi wide, un plus faţă de dimensiunea fixă pe care o are acum, ceea ce face să nu încapă foarte multă informaţie.

Să vedem acum produsul final cum va fi, dacă se va ridica la înălţimea aşteptărilor.

Tags: ,
Posted in Recomand, World Wide Web No Comments »