Есть код АПИ
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.travelpayouts.com/v2/prices/month-matrix?currency=RUS&origin=MOW&destination=LED&show_to_affiliates=true&month=2017-12-13&token=******");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("X-Access-Token: *******"));
$response = curl_exec($ch);
curl_close($ch);
$products=json_decode($response,true);
?>
<table id='example2' class='display'>
<thead>
<tr>
<th>Дата вылета </th>
<th> Цена, р.</th>
</tr>
</thead>
<tbody>
<tr>
<?php foreach ($products['data'] as $destination => $data) {
echo"<td>";
echo $data['depart_date'] ;
echo"</td>";
echo"<td>";
echo $data['value'] ;
echo"</td>"; echo"</tr>";
}
?>
</tbody>
</table>
Необходимо получаемые данные echo $data['value'] и echo $data['depart_date'] сохранять каждые 30 минут в файл text.txt и вытащить и вставить в таблицу. Дуб дубом. Спасибо
P.S код сииииильно грузит сервер.
Сама команда для Cron wget -O /dev/null script.php >/dev/null 2>&1
Что б массив в файл записать используйте json_encode()
например, а для извлечения json_decode()
, для записи в файл file_put_contents()
и для чтения file_get_contents()
Лучше разделить код на 2 файла. Первый для записи. Второй для чтения.
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.travelpayouts.com/v2/prices/month-matrix?currency=RUS&origin=MOW&destination=LED&show_to_affiliates=true&month=2017-12-13&token=****");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("X-Access-Token: *****"));
$response = curl_exec($ch);
curl_close($ch);
file_put_contents('text.txt', $response);
?>
Его ставим на Cron. А этот открываем для чтения.
<table id='example2' class='display'>
<thead>
<tr>
<th>Дата вылета </th>
<th>Цена, р.</th>
</tr>
</thead>
<tbody>
<tr>
<?php
$data = json_decode(file_get_contents('text.txt'), true);
for ($i=0; $i < count($data['data']); $i++) {
echo"<td>";
echo $data['data'][$i]['depart_date'] ;
echo"</td>";
echo"<td>";
echo $data['data'][$i]['value'] ;
echo"</td>"; echo"</tr>";
}
?>
</tbody>
</table>
Код проверен. Работает.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Добрый вечер! Подскажите как правильно написать код, суть в том мне нужно чтобы так работал: Пример - в базе данных значения:
Добрый день! Как составить отчет по нескольким таблицам? Все записи в таблицы заявки объединяются по году и недели в виде ссылкиНа другой...
Подскажите как собирать сообщения из других сайтов,есть 10 или больше сайтов на которых стоит реклама и на них есть обратная связь и вопрос...