Ваш ключ: необходима авторизация | MyProxy - бесплатный обменник валидных прокси между пользователями форума.

PHP скрипт для загрузки курсов валют

Тема в разделе PHP, создана пользователем Hangman666, 13 июн 2016.

Войдите для ответа
  1. Hangman666 Хранитель Идей

    Hangman666
    Статус:
    Вне сети
    Сообщения:
    474
    Симпатии:
    271
    Регистрация:
    10.03.16
    Многие из Вас неоднократно видели, что на некоторых сайтах выводятся курсы валют. Разумеется, администраторы этих сайтов сами ежедневно их не меняют (надеюсь). Они их подгружают с сайта ЦентроБанка. И в этой статье я дам код PHP-скрипта для загрузки курсов валют с сайта ЦентроБанка и вывода их на страницу.

    Код:
    <?php
      $date = date("d/m/Y"); // Сегодняшняя дата в необходимом формате
      $link = "http://www.cbr.ru/scripts/XML_daily.asp?date_req=$date"; // Ссылка на XML-файл с курсами валют
      $content = file_get_contents($link); // Скачиваем содержимое страницы
      $dom = new domDocument("1.0", "cp1251"); // Создаём DOM
      $dom->loadXML($content); // Загружаем в DOM XML-документ
      $root = $dom->documentElement; // Берём корневой элемент
      $childs = $root->childNodes; // Получаем список дочерних элементов
      $data = array(); // Набор данных
      for ($i = 0; $i < $childs->length; $i++) {
        $childs_new = $childs->item($i)->childNodes; // Берём дочерние узлы
        for ($j = 0; $j < $childs_new->length; $j++) {
          /* Ищем интересующие нас валюты */
          $el = $childs_new->item($j);
          $code = $el->nodeValue;
          if (($code == "USD") || ($code == "EUR")) $data[] = $childs_new; // Добавляем необходимые валюты в массив
        }
      }
      /* Перебор массива с данными о валютах */
      for ($i = 0; $i < count($data); $i++) {
        $list = $data[$i];
        for ($j = 0; $j < $list->length; $j++) {
          $el = $list->item($j);
          /* Выводим курсы валют */
          if ($el->nodeName == "Name") echo $el->nodeValue." - ";
          elseif ($el->nodeName == "Value") echo $el->nodeValue." рублей<br />";
        }
      }
    ?>
     
    13 июн 2016 #1
  2. ERROR404 Администратор

    ERROR404
    Статус:
    В сети
    Я бы использовал PHP Simple HTML DOM Parser, там есть jquery-селекторы, по которым проще парсить информацию
     
    18 июн 2016 #2
    Hangman666 нравится это.
Загрузка...
Похожие темы
  1. Karnaval
    Ответов:
    0
    Просмотров:
    264
  2. TekToNiT
    Ответов:
    18
    Просмотров:
    283
  3. Benetton
    Ответов:
    1
    Просмотров:
    111
  4. Hangman666
    Ответов:
    16
    Просмотров:
    295
  5. Hresh
    Ответов:
    1
    Просмотров:
    1.099
Top