17 сентября 2019 PHP
Для этого нужно воспользоваться ссылкой по адресу сайта Центробанка http://www.cbr.ru/currency_base/XML_daily.asp?date_req=$date, где $data дата в формате ДД/ММ/ГГГГ. Таким образом можно узнать курс валют установленных в запрошенный день.
Если например узнать каков был курс валюты на 18 января 2019 года то можно сгенерировать вот такую ссылку http://www.cbr.ru/currency_base/XML_daily.asp?date_req=18/01/2019. В результате этого будет открыта страница, которая содержит таблицу с курсами валют, установленными на данный день. Далее необходимо загрузить страницу и разобрать XML-код при помощи регулярных выражений. Ниже представлен код скрипта, загружающий курсы доллара и евро с сайта Центробанка (http://www.cbr.ru)
// Получаем текущие курсы валют в rss-формате с сайта www.cbr.ru $content = get_content(); // Разбираем содержимое, при помощи регулярных выражений $pattern = "#]+>[^>]+>([^<]+)[^>]+>[^>]+>[^>]+>[^>]+>[^>]+>[^>]+>([^<]+)[^>]+>[^>]+>([^<]+)#i"; preg_match_all($pattern, $content, $out, PREG_SET_ORDER); $dollar = ""; $euro = ""; foreach($out as $cur) { if($cur[2] == 840) $dollar = str_replace(",",".",$cur[4]); if($cur[2] == 978) $euro = str_replace(",",".",$cur[4]); } echo "Доллар - ".$dollar."
"; echo "Евро - ".$euro."
"; function get_content() { // Формируем сегодняшнюю дату $date = date("d/m/Y"); // Формируем ссылку $link = "http://www.cbr.ru/scripts/XML_daily.asp?date_req=".$date; // Загружаем HTML-страницу $fd = @fopen($link, "r"); $text=""; if (!$fd) echo "Сервер ЦБ не отвечает"; else { // Чтение содержимого файла в переменную $text while (!feof ($fd)) $text .= fgets($fd, 4096); // Закрыть открытый файловый дескриптор fclose ($fd); } return $text; }