Здравствуйте дорогие друзья! В этом уроке я покажу, как можно получить и вывести на сайт текущие курсы валют.
Итак, выводить мы будет курс доллара и курс евро на сегодня. Для того, чтобы эти самые курсы вывести на сайте, их необходимо откуда-то получить – логично.
Источником данных станет проверенный мной сервис, а именно Yahoo API.
В свое время, когда мне необходимо было выводить курсы валют на одном из сайтов, одна из основных проблем была связана с отсутствием стабильного источника курсов валют – пришлось перепробовать множество сервисов, которые, бывало, переставали работать, либо просто-напросто отдавали неверные данные.
Давайте рассмотрим простенький код:
$json_kurs = file_get_contents('https://query.yahooapis.com/v1/public/yql?q=select+*+from+yahoo.finance.xchange+where+pair+=+%22USDRUB,EURRUB%22&format=json&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback='); $json_kurs = json_decode($json_kurs, true); $usd = $json_kurs['query']['results']['rate']['0']['Rate']; $euro = $json_kurs['query']['results']['rate']['1']['Rate']; echo '<div id="kurs_valut">Доллар: '.$usd.' Евро: '.$euro.'.</div>';
Что делает этот код:
- С помощью функции file_get_contents получаем необходимые данные в формате json
- Функция json_decode преобразует json код в многомерный массив.
- В переменные usd и euro, обращаясь к массиву, помещаем курсы доллара и евро соответственно.
- Выводим курсы валют.
Вот таким несложным способом можно получить и вывести необходимые данные.
У многих должен возникнуть вопрос, касающийся слишком частого обращения к Yahoo, поэтому в следующем уроке я приведу пример кода, с помощью которого можно будет, во-первых, кэшировать данные, и во-вторых можно будет задать частоту запроса, например, сделав так, чтобы курсы валют обновлялись каждый час.
На этом все, до новых статей, удачи!
Если вам нужна помощь в создании какого-либо функционала, сайта, сервиса, тестов или калькуляторов, то готов помочь, подробнее на странице услуг.
Спасибо Вам за полезную статью, то что было нужно!
Всегда пожалуйста!