den67rus / yii2-sypexgeo
用于 Sypex Geo API (http://sypexgeo.net) 的 Yii2 扩展
1.0.1
2024-08-16 21:40 UTC
Requires
- yiisoft/yii2: *
This package is not auto-updated.
Last update: 2024-09-27 22:15:33 UTC
README
Yii2 扩展用于 Sypex Geo API
Sypex Geo - 根据IP地址获取位置的软件产品。获取IP地址后,Sypex Geo 会输出访客的位置信息 - 国家、地区、城市、地理坐标等,以俄语和英语显示。Sypex Geo 使用本地紧凑的二进制数据库文件,运行速度非常快。更多信息请访问: http://sypexgeo.net/
此 Yii2 扩展允许在 Yii2 应用程序中使用 Sypex Geo API。
用法
扩展安装后,只需在您的代码中简单使用即可
<?php $geo = new \jisoft\sypexgeo\Sypexgeo(); // get by remote IP $geo->get(); // also returned geo data as array echo $geo->ip,'<br>'; echo $geo->ipAsLong,'<br>'; var_dump($geo->country); echo '<br>'; var_dump($geo->region); echo '<br>'; var_dump($geo->city); echo '<br>'; // get by custom IP $geo->get('212.42.76.252'); ?>
国家、地区和城市信息以数组形式返回。例如
Country array ( 'id' => 222, 'iso' => 'UA', 'continent' => 'EU', 'lat' => 49, 'lon' => 32, 'name_ru' => 'Украина', 'name_en' => 'Ukraine', 'timezone' => 'Europe/Kiev', ), Region array ( 'id' => 709716, 'lat' => 48, 'lon' => 37.5, 'name_ru' => 'Донецкая область', 'name_en' => 'Donets\'ka Oblast\'', 'iso' => 'UA-14', 'timezone' => 'Europe/Zaporozhye', 'okato' => '14', ), City array ( 'id' => 709717, 'lat' => 48.023000000000003, 'lon' => 37.802239999999998, 'name_ru' => 'Донецк', 'name_en' => 'Donets\'k', 'okato' => '14101', ),
更新 SypexGeo
为了更新 SypexGeo,请将以下代码添加到 cron 中
<?php $geo = new \jisoft\sypexgeo\SxUpdate(); // Custom dir dat files // by default Yii::getAlias('@runtime'); or __DIR__ if not Yii Framework $geo->updateDir = '/tmp'; // Custom url update $geo->cityUrl = 'http://example.com/file.zip'; $geo->countryUrl = 'http://example.com/file.zip'; $geo->maxUrl = 'http://example.com/file.zip'; // Be sure to specify the url // Update Sypex Geo City file $geo->updateCity(); // Update Sypex Geo Country file $geo->updateCountry(); // Update Sypex Geo Max file // Be sure to specify the url $geo->maxUrl $geo->updateMax(); // Update Sypex Geo all file // Be sure to specify the url $geo->maxUrl $geo->updateAll(); ?>
安装
安装此扩展的首选方式是通过 composer。
运行以下命令之一:
composer require den67rus/yii2-sypexgeo "~1.0.0"
或
"den67rus/yii2-sypexgeo": "*"
将其添加到您的 composer.json
文件的 require 部分中。