Re: Модуль "Курсы валют" (ПриватБанк+Банк России)
Добавлено: Ср мар 21, 2018 5:54 pm
5.2 не обновлял с маркета модули и сам мд не обновлялся
пришлось..
пришлось..
Что вам мешает брать курс из модуля? Он как раз из центробанкаwebms писал(а): обновился на php 7.2 и перестал обновляться через крон, как можно исправить?
Код: Выделить всё
echo "public function SaveAutoUpdate(){
//Начало парсинга Приватбанк АПИ
libxml_use_internal_errors(true);
$url = 'https://api.privatbank.ua/p24api/pubinfo?exchange&coursid=11';
$xml = @simplexml_load_file($url);
if ($xml) {
$i=0;
//получаем курс евро
foreach($xml->row[1]->exchangerate->attributes() as $key => $exchangerate){
if($i==2){
sg("exchange_rate.eurobuy",round((float)$exchangerate,1));
}
else if($i==3){
sg("exchange_rate.eurosale",round((float)$exchangerate,1));
}
++$i;
}
//получаем курс доллара
$j=0;
foreach($xml->row[0]->exchangerate->attributes() as $key => $exchangerate){
if($j==2){
sg("exchange_rate.usdbuy",round((float)$exchangerate,1));
}
else if($j==3){
sg("exchange_rate.usdsale",round((float)$exchangerate,1));
}
++$j;
}
//получаем курс рубля
$k=0;
foreach($xml->row[2]->exchangerate->attributes() as $key => $exchangerate){
if($k==2){
sg("exchange_rate.rurbuy",round((float)$exchangerate,2));
}
else if($k==3){
sg("exchange_rate.rursale",round((float)$exchangerate,2));
}
++$k;
}
sg("exchange_rate.date1",date("Y-m-d H:i:s"));
}";
Я реализовал через сценарийdc0d3r писал(а): ↑Пт июн 01, 2018 4:38 pmКто может подсказать как мне данные брать с Нац Банка, API открытый. Вот с кодом не могу разобраться как в модуль его прописать?
Вот сайт с открытыми данными https://data.egov.kz/datasets/view?inde ... bagamdary4
Не могу врубиться как этот код поменять под свойКод: Выделить всё
echo "public function SaveAutoUpdate(){ //Начало парсинга Приватбанк АПИ libxml_use_internal_errors(true); $url = 'https://api.privatbank.ua/p24api/pubinfo?exchange&coursid=11'; $xml = @simplexml_load_file($url); if ($xml) { $i=0; //получаем курс евро foreach($xml->row[1]->exchangerate->attributes() as $key => $exchangerate){ if($i==2){ sg("exchange_rate.eurobuy",round((float)$exchangerate,1)); } else if($i==3){ sg("exchange_rate.eurosale",round((float)$exchangerate,1)); } ++$i; } //получаем курс доллара $j=0; foreach($xml->row[0]->exchangerate->attributes() as $key => $exchangerate){ if($j==2){ sg("exchange_rate.usdbuy",round((float)$exchangerate,1)); } else if($j==3){ sg("exchange_rate.usdsale",round((float)$exchangerate,1)); } ++$j; } //получаем курс рубля $k=0; foreach($xml->row[2]->exchangerate->attributes() as $key => $exchangerate){ if($k==2){ sg("exchange_rate.rurbuy",round((float)$exchangerate,2)); } else if($k==3){ sg("exchange_rate.rursale",round((float)$exchangerate,2)); } ++$k; } sg("exchange_rate.date1",date("Y-m-d H:i:s")); }";
Код: Выделить всё
function getRates(){
$url = "http://www.nationalbank.kz/rss/rates_all.xml";
$dataObj = simplexml_load_file($url);
foreach ($dataObj->channel->item as $item) {
if ($item->title =='USD') {
sg('exchange_rate.date4',$item->pubDate);
sg('exchange_rate.kztusd',$item->description);
sg('exchange_rate.usdindex',$item->index);
sg('exchange_rate.kztusdchange',$item->change);
}
if ($item->title =='EUR') {
sg('exchange_rate.date4',$item->pubDate);
sg('exchange_rate.kzteur',$item->description);
sg('exchange_rate.eurindex',$item->index);
sg('exchange_rate.kzteurchange',$item->change);
}
}
}
GetRates();