namnv609 / timezonedb-php-api
TimeZoneDB.com 的 PHP API 客户端
v1.0
2017-06-23 04:16 UTC
Requires
- php: >=5.5
- guzzlehttp/guzzle: ^6.1
- symfony/options-resolver: ^3.2
This package is not auto-updated.
Last update: 2024-09-27 13:08:14 UTC
README
TimeZoneDB 为全球城市提供免费时区数据库。该数据库根据创意共享署名 3.0 许可证授权。它包含国家名称、时区、缩写、GMT 偏移量和夏令时(DST)。数据以 CSV 和 SQL 格式提供。您可以免费下载并将其应用于您的项目。
系统要求
- PHP >= 5.5
安装
使用 Composer
composer install namnv609/timezonedb-php-api
或者在您的 composer.json
中包含以下内容
"namnv609/timezonedb-php-api": "1.0"
使用说明
首先,创建一个新的 TimeZoneDB
实例以配置库以供使用。
use NNV\TimeZoneDB; $tzDB = new TimeZoneDB(<TimeZoneDB API Key>);
一旦注册了 TimeZoneDB
实例,您可以使用它如下
列出时区
列出 TimeZoneDB 支持的所有可用时区。
$listTimeZoneParams = [ "fields" => "countryCode,countryName", "country" => "NZ", // Other params ]; $tzDB->listTimeZone($listTimeZoneParams);
获取时区
通过城市名称、时区、纬度、经度或 IP 地址获取城市的本地时间。
$getTimeZoneParams = [ "by" => "zone", "zone" => "America/Chicago", // Other params ]; $tzDB->getTimeZone($getTimeZoneParams);
转换时区
在两个不同的时区之间转换时间戳。
$convertTimeZoneParams = [ "from" => "America/Los_Angeles", "to" => "Australia/Sydney", "time" => "06/01/2016 03:00PM", // You can use standard DateTime format or Unix time // Other params ]; $tzDB->convertTimeZone($convertTimeZoneParams);
工具
我们支持一些工具函数供您使用,例如
listTimeZones
TimeZoneDB 支持的时区列表
$tzDB->listTimeZones();
codeToZones
将国家代码转换为时区
$tzDB->codeToZones("AQ"); // Result [ 8 => "Antarctica/Casey", 9 => "Antarctica/Davis", 10 => "Antarctica/DumontDUrville", 11 => "Antarctica/Mawson", 12 => "Antarctica/McMurdo", 13 => "Antarctica/Palmer", 14 => "Antarctica/Rothera", 15 => "Antarctica/Syowa", 16 => "Antarctica/Troll", 17 => "Antarctica/Vostok", ]
countryToZones
国家名称到时区
$tzDB->countryToZones("Vietnam"); // Result [ 418 => "Asia/Ho_Chi_Minh", ]
zoneToCode
时区到国家代码
$tzDB->zoneToCode("Asia/Ho_Chi_Minh"); // Result "VN"
zoneToCountry
时区到国家名称
$tzDB->zoneToCountry("Asia/Ho_Chi_Minh"); // Result "Vietnam"