Euro foreign exchange reference rates
The reference rates are usually updated by 3 p.m. C.E.T. They are based on a regular daily concertation procedure between central banks across Europe and worldwide, which normally takes place at 2.15 p.m. CET.
How to parse the data Regular expression example <?php //This is a PHP(4/5) script example on how eurofxref-daily.xml can be parsed //Read eurofxref-daily.xml file in memory //For this command you will need the config option allow_url_fopen=On (default) $XMLContent=file("http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml"); //the file is updated daily between 2.15 p.m. and 3.00 p.m. CET foreach($XMLContent as $line){ if(preg_match("/currency='([[:alpha:]]+)'/",$line,$currencyCode)){ if(preg_match("/rate='([[:graph:]]+)'/",$line,$rate)){ //Output the value of 1EUR for a currency code echo'1€='.$rate[1].' '.$currencyCode[1].'<br/>'; //-------------------------------------------------- //Here you can add your code for inserting //$rate[1] and $currencyCode[1] into your database //-------------------------------------------------- } } } ?> XML parser example <?php function StartElement($parser, $name, $attrs) { if (!empty($attrs['RATE'])) { echo "1€=".$attrs['RATE']." ".$attrs['CURRENCY']."<br />"; } } $xml_parser= xml_parser_create(); xml_set_element_handler($xml_parser, "StartElement", ""); // for the following command you will need file_get_contents (PHP >= 4.3.0) // and the config option allow_url_fopen=On (default) xml_parse($xml_parser, file_get_contents ("http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml")); xml_parser_free($xml_parser); ?> SimpleXML example <?php //This is aPHP(5)script example on how eurofxref-daily.xml can be parsed //Read eurofxref-daily.xml file in memory //For the next command you will need the config option allow_url_fopen=On (default) $XML=simplexml_load_file("http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml"); //the file is updated daily between 2.15 p.m. and 3.00 p.m. CET foreach($XML->Cube->Cube->Cube as $rate){ //Output the value of 1EUR for a currency code echo '1€='.$rate["rate"].' '.$rate["currency"].'<br/>'; //-------------------------------------------------- //Here you can add your code for inserting //$rate["rate"] and $rate["currency"] into your database //-------------------------------------------------- } ?> Output of the code above 1€=1.3857 USD 1€=111.87 JPY 1€=1.9558 BGN 1€=24.598 CZK 1€=7.4562 DKK 1€=15.6466 EEK 1€=0.86860 GBP 1€=271.76 HUF 1€=3.4528 LTL 1€=0.7097 LVL 1€=3.9820 PLN 1€=4.2663 RON 1€=9.3610 SEK 1€=1.3708 CHF 1€=8.1920 NOK 1€=7.3470 HRK 1€=42.7523 RUB 1€=1.9887 TRY 1€=1.4216 AUD 1€=2.3638 BRL 1€=1.4150 CAD 1€=9.2437 CNY 1€=10.7467 HKD 1€=12383.89 IDR 1€=61.5200 INR 1€=1557.90 KRW 1€=17.1544 MXN 1€=4.3090 MYR 1€=1.8280 NZD 1€=59.741 PHP 1€=1.7968 SGD 1€=41.509 THB 1€=9.6827 ZAR
from:http://www.ecb.int/stats/exchange/eurofxref/html/index.en.html