27.04.2024

Загрузка курса валют с сайта ЦентроБанка

Источником информации об официальном курсе валюты служит сайт Центробанка Российской Федерации. Обратившись по адресу сайта Центробанка , где $data дата в формате ДД/ММ/ГГГГ можно узнать курс валют установленных в запрошенный день.

К примеру, узнать каков был курс валюты на 14 января 2005 года можно по адресу. В результате будет открыта страница, содержащая таблицу с курсами валют, установленными в этот день.

Остаётся только загрузить страницу и разобрать HTML-код при помощи регулярных выражений. Ниже представлен скрипт, загружающий курсы доллара и евро с сайта Центрабанка (http://www.cbr.ru)

Загрузка курса валют с сайта ЦентроБанка

<?php 
  // Получаем текущие курсы валют в rss-формате с сайта www.cbr.ru 
  $content = get_content(); 
  // Разбираем содержимое, при помощи регулярных выражений 
  $pattern = "#<Valute ID=\"([^\"]+)[^>]+>[^>]+>([^<]+)[^>]+>[^>]+>[^>]+>[^>]+>[^>]+>[^>]+>([^<]+)[^>]+>[^>]+>([^<]+)#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."<br>"; 
  echo "Евро - ".$euro."<br>"; 
  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; 
  } 
?>

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *