Files
crm.clientright.ru/cirium.php

73 lines
2.6 KiB
PHP
Executable File
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
// Ваши данные для авторизации
$appId = "6ceb88f8";
$appKey = "44be8058920f6efb3e64446bc1c030c4";
// Базовый URL API Cirium
$baseUrl = "https://api.flightstats.com/flex/flightstatus/rest/v2/json/flight/status";
// Параметры запроса
$carrier = "SU"; // Код авиакомпании (например, "SU" для Аэрофлота)
$flightNumber = "1231"; // Номер рейса
$flightDate = "2025/01/16"; // Дата рейса (формат YYYY/MM/DD)
// Сформируем URL для запроса
$url = "{$baseUrl}/{$carrier}/{$flightNumber}/dep/{$flightDate}?appId={$appId}&appKey={$appKey}";
// Путь к папке для логов
$logDir = __DIR__ . '/logs';
if (!is_dir($logDir)) {
mkdir($logDir, 0777, true);
}
// Путь к лог-файлу
$logFile = $logDir . '/cirium_api.log';
// Функция логирования
function writeLog($message)
{
global $logFile;
$timestamp = date('Y-m-d H:i:s');
file_put_contents($logFile, "[$timestamp] $message" . PHP_EOL, FILE_APPEND);
}
// Логируем отправку запроса
writeLog("Отправка запроса к API Cirium: $url");
// Настраиваем cURL
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPGET, true);
// Выполняем запрос
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$curlError = curl_error($ch);
curl_close($ch);
// Логируем ответ
writeLog("HTTP-код ответа: $httpCode");
writeLog("Ответ API: $response");
// Обрабатываем ответ
if ($httpCode === 200 && $response) {
$data = json_decode($response, true);
// Выводим основные данные о рейсе
echo "Рейс: {$data['flightStatus']['carrierFsCode']}{$data['flightStatus']['flightNumber']}<br>";
echo "Статус: {$data['flightStatus']['status']}<br>";
echo "Вылет: {$data['flightStatus']['departureAirportFsCode']} ({$data['flightStatus']['operationalTimes']['scheduledGateDeparture']['dateLocal']})<br>";
echo "Прилет: {$data['flightStatus']['arrivalAirportFsCode']} ({$data['flightStatus']['operationalTimes']['scheduledGateArrival']['dateLocal']})<br>";
} else {
// Логируем ошибки
if ($curlError) {
writeLog("Ошибка cURL: $curlError");
echo "Ошибка cURL: $curlError<br>";
} else {
writeLog("Ошибка API: HTTP-код $httpCode, ответ: $response");
echo "Ошибка API: HTTP-код $httpCode<br>";
}
}
?>