апреля 2, 2008 | by Макс | Часто замечаем информеры курса USD, Euro и других валют на сайтах, но вот как получить актуальное значение курса, да ещё и использовать в php как переменную? Легко: При обращении к скрипту Центрального банка РФ, формируемому XML ответ, мы получаем ответ вида: […] 840 USD 1 Доллар США 24,5462 978 EUR 1 Евро 35,9332 […] Остается лишь его пропарсить, обработав необходимые данные: function centrobank_get_valute() { $fopen = fopen(”http://www. cbr. ru/scripts/XML_daily. asp? date_req=”.date(”d/m/Y”), “r”); if (!$fopen) { return array(’Не удалось подключиться к центробанку. Валютная цена недоступна.’, ”, ”); exit; } else { $text = “”; while (!feof ($fopen)) { $text.= fgets($fopen, 4096); } } fclose($fopen); preg_match_all(”#]+>[^>]+>([^]+>[^>]+>[^>]+>[^>]+>[^>]+>[^>]+>([^]+>[^>]+>([^ foreach($final_texts as $final_text) { if($final_text[2] == 840) { $kurs_dollar = str_replace(”,”, “.”, $final_text[4]); } if($final_text[2] == 978) { $kurs_euro = str_replace(”,”, “.”, $final_text[4]); } } return array(null, $kurs_dollar, $kurs_euro); } Затем, в нужном месте один раз вызываем: if(function_exists(’centrobank_get_valute’)){ $cbv = centrobank_get_valute(); $cb_valute_value_err = $cbv[0]; $cb_valute_value_usd = $cbv[1]; $cb_valute_value_euro = $cbv[2]; if($cb_valute_value_err!== ”) print $cbv[0]; } ?> Теперь, в переменной $cb_valute_value_usd храниться курс доллара, $cb_valute_value_euro – евро. $cb_valute_value_err содержит ошибку. если всё удачно, то эта переменная пустая. h++p://www. infine. ru/support/php_code/php_valute_course. htm Теги: php, Интернет=Деньги
Понравилась статья? Получай обновления и будь всегда в курсе событий!