bejblade/openweather
最新稳定版本:v1.0.3
Composer 安装命令:
composer require bejblade/openweather
包简介
A PHP library for interacting with the OpenWeather API.
README 文档
README
A PHP library for interacting with the OpenWeather API, providing tools for retrieving and processing weather data, including forecasts, current conditions, and historical data.
Features
- Support for free OpenWeather API endpoints (including One Call API):
- Current weather data
- 5-day/3-hour forecast
- One Call API (current, hourly, and daily forecast)
- Historical weather data
Installation
Install the library via Composer:
composer require bejblade/openweather
Configuration
The Config class is used to manage global settings for the library. You can set following options:
api_key(Required): Your OpenWeather API key.language: Language for API responses (default 'en').date_format: Date format used in dates of API data. PHP date format for displaying dates (default 'd/m/Y').time_format: Time format used in dates of API data. PHP date format for displaying time (default 'H:i').timezone: Some data from the API is returned only in the UTC timezone. Set this option to convert the data to your selected timezone. PHP supported timezone (default 'UTC')units: Units for temperature and measure, API data will be recieved in this format. (default metric)metric: Celsius/Metricimperial: Fahrenheit/Imperialstandard: Kelvin/Metric
Some of the options can be set in .env file:
api_key:OPENWEATHER_API_KEY,language:OPENWEATHER_LANGUAGE
By default, only api_key is required, other options will be loaded with default settings.
Basic setup
use Bejblade\OpenWeather\OpenWeather; // Initialize OpenWeather API with Your API key using default configuration $api = new OpenWeather(['api_key' => 'your_api_key']);
Example
use Bejblade\OpenWeather\OpenWeather; $api = new OpenWeather(['api_key' => 'your_api_key']); // First initialize location object $location = $api->findLocationByName('London'); // Fetch weather data $weather = $api->getWeather($location); echo 'Current weather in ' . $location->getName() .': '. $weather->getDescription(); echo 'Temperature: ' . $weather->temperature()->get().'°'.$weather->temperature()->getUnits(); if($location->getWeather()->isRaining()) // You can also access weather through location objects echo "It's raining";
Contributing
Contributions are welcome! Please open an issue or submit a pull request.
License
This project is licensed under the MIT License.
统计信息
- 总下载量: 150
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-01-23