Страница 3 из 6

Re: Курс доллара

Добавлено: Пн апр 28, 2014 1:34 pm
LutsenkoDenis
Как мне кажется, тут нет людей которые за вас будут делать что-либо, если конечно им это не будет тоже необходимо.
Но это моё имхо.

Касаемо скиллов поиска и т.д... вот мой пример. В нём есть комментарии почти к каждой строке. И там можно увидеть как поменять дату на +1 день. Логично предположить что аналогичным способом можно поменять на -1 день.

В вашем примере моно сделать так:

Код: Выделить всё

$cursDate = date('d/m/Y', strtotime("-1 days"));
$file = simplexml_load_file("http://www.cbr.ru/scripts/XML_daily.asp?date_req=" . $cursDate); 
В любом случае, посмотрите в сторону того, когда и каким образом центробанк меняет курсы валют.

Re: Курс доллара

Добавлено: Пн апр 28, 2014 2:06 pm
PAV
Супер, спасибо, попробую.

За меня не надо делать. Надо делать для себя и (бросать в воду) выкладывать на форум ;)

Re: Курс доллара

Добавлено: Пн апр 28, 2014 2:32 pm
LutsenkoDenis
Ну мне-то это как раз курсы из прошлого и не нужны :) Нужно только сегодня и завтра.

Re: Курс доллара

Добавлено: Пн апр 28, 2014 2:42 pm
PAV
Это я не про вас, это я вообще ;) А блок курсов домучаю - выложу. Сейчас в командировке, времени нет

Re: Курс доллара

Добавлено: Пн апр 28, 2014 4:02 pm
Ivan

Re: Курс доллара

Добавлено: Ср июн 11, 2014 9:36 am
PAV
Моя финальная версия, всем спасибо.

Код: Выделить всё

say("обновление курсов валюты");
$file = simplexml_load_file("http://www.cbr.ru/scripts/XML_daily.asp?date_req=".date("d/m/Y"));
$xml = $file->xpath("//Valute[@ID='R01235']");
$valute = strval($xml[0]->Value);
$dollar = str_replace(",",".",$valute);

$olddate = date('d/m/Y', strtotime("-1 days"));
$file2 = simplexml_load_file("http://www.cbr.ru/scripts/XML_daily.asp?date_req=" . $olddate);
$xml2 = $file2->xpath("//Valute[@ID='R01235']");
$valute2 = strval($xml2[0]->Value);
$dollar2 = str_replace(",",".",$valute2);

if ($dollar>$dollar2){
sg("USD.direction","2");
} elseif ($dollar<$dollar2){
sg("USD.direction","1");
} else {
sg("USD.direction","0");
}
$delta = $dollar-$dollar2;
sg("USD.delta",number_format($delta, 2)); 
sg("USD.data_old",$dollar2); 
sg("USD.data",$dollar); 
sg("USD.updatedTime", date("y-m-d H:i"));

//EUR

$file3 = simplexml_load_file("http://www.cbr.ru/scripts/XML_daily.asp?date_req=".date("d/m/Y"));
$xml3 = $file3->xpath("//Valute[@ID='R01239']");
$valute3 = strval($xml3[0]->Value);
$eur = str_replace(",",".",$valute3);

$olddate4 = date('d/m/Y', strtotime("-1 days"));
$file4 = simplexml_load_file("http://www.cbr.ru/scripts/XML_daily.asp?date_req=" . $olddate4);
$xml4 = $file4->xpath("//Valute[@ID='R01239']");
$valute4 = strval($xml4[0]->Value);
$eur2 = str_replace(",",".",$valute4);
if ($eur>$eur2){
sg("EUR.direction","2");
} elseif ($eur<$eur2){
sg("EUR.direction","1");
} else {
sg("EUR.direction","0");
}
$delta2 = $eur-$eur2;
sg("EUR.delta",number_format($delta2, 2)); 
sg("EUR.data_old",$eur2); 
sg("EUR.data",$eur); 
sg("EUR.updatedTime", date("y-m-d H:i"));


Re: Курс доллара

Добавлено: Чт апр 09, 2015 7:21 pm
Ruslan
Здравствуйте,
Прошу помощи у знатоков:
не могу запустить код

Код: Выделить всё

$file = simplexml_load_file("http://www.boi.org.il/currency.xml?curr=01");
if (!$file) // если нет файла
{
  DebMes("CBR error");
  return;
}
$xml = $file->xpath("/CURRENCY");
$valute = strval($xml[0]->RATE);
$dollar = str_replace(",",".",$valute);

setGlobal('Exchange Rates.USD.Rate', $valute);


Debmes("Value: ".$valute);

Пример кода взял из этой ветки, т.к. в обоих случая в ответ приходит xml.
В моем случае xml очень короткий и лишней информации нет, но получить результат не получается :( .
Подскажите что не так.

Re: Курс доллара

Добавлено: Пт апр 10, 2015 7:29 am
dmw

Код: Выделить всё

setGlobal('Exchange Rates.USD.Rate', $valute); 
Заменить на:

Код: Выделить всё

setGlobal('USD.Rate', $dollar); 

Re: Курс доллара

Добавлено: Пт апр 10, 2015 10:17 am
Ruslan
Я вообще данных не получаю. Переменная $valute пустая. Это видно в Debmes.

Re: Курс доллара

Добавлено: Пт апр 10, 2015 10:30 am
LutsenkoDenis
Замени

Код: Выделить всё

$xml = $file->xpath("/CURRENCY");
на

Код: Выделить всё

$xml = $file->xpath("//CURRENCY");