Download the PHP package yaleksandr89/weather without Composer
On this page you can find all versions of the php package yaleksandr89/weather. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download yaleksandr89/weather
More information about yaleksandr89/weather
Files in yaleksandr89/weather
Package weather
Short Description Package for retrieving current weather by coordinates
License MIT
Homepage https://github.com/yaleksandr89/weather
Informations about the package weather
Weather
Выберите язык
| Русский | English | Español | 中文 | Français | Deutsch |
|---|---|---|---|---|---|
| Выбран | English | Español | 中文 | Français | Deutsch |
Библиотека для получения текущей погоды по координатам через WeatherAPI и Open-Meteo. Данные разных сервисов приводятся к единому типизированному формату и общим единицам измерения.
Для чего нужен пакет
WeatherAPI и Open-Meteo используют разные HTTP API и форматы ответов. Weather даёт единый PHP API для получения текущей погоды по координатам, поэтому прикладному коду не нужно учитывать особенности конкретного сервиса.
Что делает пакет
- получает текущую погоду по широте и долготе;
- поддерживает WeatherAPI и Open-Meteo;
- возвращает результат в виде
CurrentWeather; - приводит погодные данные к единым метрическим единицам;
- предоставляет типизированные состояния погоды через
WeatherCondition; - позволяет подключить собственный источник данных через
CurrentWeatherProvider.
Требования
PHP ^8.4;Composer.
Быстрый старт
Установите пакет:
Open-Meteo
Для Open-Meteo API key не требуется.
Показать реальный ответ Open-Meteo и CurrentWeather
#### Фрагмент реального ответа Open-Meteo #### Результат после преобразованияWeatherAPI
Для WeatherAPI нужен API key:
Замените YOUR_WEATHERAPI_KEY своим ключом. Не добавляйте реальный ключ в репозиторий: в приложении храните его вне исходного кода, например в конфигурации приложения, переменных окружения или хранилище секретов.
Показать реальный ответ WeatherAPI и CurrentWeather
#### Фрагмент реального ответа WeatherAPI #### Результат после преобразованияОба провайдера возвращают CurrentWeather. Полный состав данных, единицы измерения, необязательные значения и примеры работы с объектом описаны в руководстве по провайдерам.
Обработка ошибок
Ошибки входных данных отделены от ошибок, возникающих при обращении к погодному сервису.
Правила обработки и иерархия исключений описаны в руководстве по ошибкам.
Собственный провайдер
Если WeatherAPI и Open-Meteo не подходят, можно реализовать CurrentWeatherProvider и передать его напрямую:
Контракт и пример реализации приведены в руководстве по собственному провайдеру.
Ограничения
- поддерживается только текущая погода;
- координаты должны быть известны заранее;
- поиск города и геокодирование не выполняются;
- автоматического переключения между провайдерами нет;
- автоматические retry и cache не выполняются.
Обратная связь
- воспроизводимые ошибки — GitHub Issues.
Если пакет оказался полезен, поставьте звезду на GitHub — так его будет проще найти другим разработчикам. 🤘
All versions of weather with dependencies
guzzlehttp/guzzle Version ^8.0.1
psr/http-client Version ^1.0.3
psr/http-factory Version ^1.1.0
psr/http-message Version ^2.0