Цитата:
|
Цитата:
|
то есть если в 0:00 каждый день запрашивать всё будет нормально? и 0 больше не будет?
|
Ну я же русским языком написал за какой период запрашивается курс. Сейчас 12, торги еще не закончены, курса нового на этот день еще нет. Для всех торгующих курс на сегодня, это курс 11 числа.
В 0:00 (можете не 00 минут сделать, а 5, дабы учесть погрешности во времени) часов (это будет 13 уже) будет запрошен курс за 10-12, в это время новый курс уже будет установлен. В json он будет записан по датой 13, а предыдущий под датой 12. |
Ясно , спасибо!
|
Сервер должен работать обзательно по московскому часовому поясу, любой часовой пояс восточнее Москвы будет приводить к такой ошибке.
|
laimas,
Всё верно? ![]() |
Мне откуда знать когда это происходило. Если эта дата/время соответствует московскому то да.
|
laimas,
да соответствует, можете подсказать тут? |
laimas,
Крон сработал и обновил в 0:05 по Московскому, одни нули
{"current":{"date":"13.2.2018","value":0,"rate":0},"previous":{"date":"12.2.2018","value":0,"rate":0}}
У ЦБ на 13 число курс отображается и нет нулей ссылка Что тут может быть не так? Всё посмотрел, крон точно проверил, обновил всё сам и вовремя.
<?
$dir = dirname(__FILE__);
chdir($dir);
libxml_use_internal_errors();
if($xml = simplexml_load_file('http://www.cbr.ru/scripts/XML_dynamic.asp?date_req1='.date('d/m/Y', strtotime('-3 day')).'&date_req2='.date('d/m/Y', strtotime('-1 day')).'&VAL_NM_RQ=R01235')) {
$last = round((float)str_replace(',', '.', current($xml->Record[0]->Value)), 2);
$usd_prev = round((float)str_replace(',', '.', current($xml->Record[1]->Value)), 2);
$usd_curr = round((float)str_replace(',', '.', current($xml->Record[2]->Value)), 2);
chmod($dir, 0777);
file_put_contents('current.json',
json_encode(
array(
'current' => array(
'date' => date('j.n.Y'),
'value' => $usd_curr,
'rate' => intval($usd_curr > $usd_prev)
),
'previous' => array(
'date' => date('j.n.Y', strtotime('-1 day')),
'value' => $usd_prev,
'rate' => intval($usd_prev > $last)
)
))
);
chmod($dir, 0700);
}
?>
|
| Часовой пояс GMT +3, время: 03:23. |