Vladislav Asked:2024-08-30 03:46:57 +0000 UTC2024-08-30 03:46:57 +0000 UTC 2024-08-30 03:46:57 +0000 UTC 如何通过php中的坐标获取时区[关闭] 772 如何使用 YANDEX 服务或其他服务在 php 中获取 tz,但免费 php 1 个回答 Voted Best Answer Vladislav 2024-08-30T03:46:57Z2024-08-30T03:46:57Z 任务是开始通过坐标接收 tz,因此这将是两种方式之一: 使用 Yandex API 接收 TZ,但他们没有用于此任务的 http api(地理编码器没有说 tz) 或 从某处接收 tz外部和免费 经过很多麻烦,我在 pyhton 中找到了解决方案,因为......有一个正常工作的时区查找器,我认为在 PHP 项目的项目根目录中放置一个简单的 py 脚本没有任何问题 有关如何实现此目标的迷你说明: Python安装: sudo apt update sudo apt install python3 python3-pip 2.安装库: pip3 install timezonefinder 我们编写一个定义 tz 的脚本(我称之为 get_timezone.py): #!/usr/bin/env python3 import sys from timezonefinder import TimezoneFinder import json def main(): if len(sys.argv) != 3: print("Usage: get_timezone.py <latitude> <longitude>") sys.exit(1) try: latitude = float(sys.argv[1]) longitude = float(sys.argv[2]) except ValueError: print("Invalid input. Latitude and longitude must be numbers.") sys.exit(1) tf = TimezoneFinder() timezone_str = tf.timezone_at(lat=latitude, lng=longitude) result = { "latitude": latitude, "longitude": longitude, "timezone": timezone_str } print(json.dumps(result)) if __name__ == "__main__": main() 使脚本可执行: chmod +x get_timezone.py 测试脚本: ./get_timezone.py 37.7749 -122.4194 *结论 6.从php调用脚本(编写自己的脚本路径) shell_exec(__DIR__.'/get_timezone.py 37.7749 -122.4194'); 我真的希望我能帮助你们中的一些人,不要用想法轰炸我,这解决了我的问题,而且很简单
任务是开始通过坐标接收 tz,因此这将是两种方式之一:
使用 Yandex API 接收 TZ,但他们没有用于此任务的 http api(地理编码器没有说 tz)
或
从某处接收 tz外部和免费
经过很多麻烦,我在 pyhton 中找到了解决方案,因为......有一个正常工作的时区查找器,我认为在 PHP 项目的项目根目录中放置一个简单的 py 脚本没有任何问题
有关如何实现此目标的迷你说明:
2.安装库:
*结论 6.从php调用脚本(编写自己的脚本路径)
我真的希望我能帮助你们中的一些人,不要用想法轰炸我,这解决了我的问题,而且很简单