Бібліотека Laravel GeoIP – дізнайтеся про геолокацію за допомогою IP-адреси
Хочете дізнатися про геолокацію відвідувачів за допомогою Laravel? Використовуючи бібліотеку GeoIP, ви можете дізнатися геолокацію користувача за його IP-адресою. У цій статті ми обговорюємо бібліотеку, яка легко інтегрує GeoIP у програму Laravel.
Є кілька випадків, коли вам потрібно отримати детальну інформацію про географічне розташування ваших відвідувачів. Ці деталі включають широту, довготу, часовий пояс, країну, валюту тощо.
Одним із прикладів використання геолокації є інтернет-магазини. У вашому магазині ви можете відобразити різні ціни та валюти залежно від країни або регіону відвідувача. Інший приклад – якщо комусь потрібно заблокувати свої веб-сайти для кількох країн.
З огляду на це, давайте подивимось, як знайти геолокацію за допомогою IP-адреси в Laravel.
Встановлення бібліотеки Laravel GeoIP
Для початку вам потрібно встановити бібліотеку Laravel Geoip. Встановіть бібліотеку за допомогою команди:
composer require torann/geoip
Після встановлення бібліотеки зареєструйте постачальника послуг за допомогою своєї програми. Відкрийте config/app.php
та додайте постачальників послуг до масиву постачальників.
'providers' => [
......
TorannGeoIPGeoIPServiceProvider::class,
]
Далі додайте фасад у масив псевдонімів.
'aliases' => [
....
'GeoIP' => TorannGeoIPFacadesGeoIP::class,
];
Після описаних вище кроків опублікуйте конфігурацію за допомогою команди:
php artisan vendor:publish --provider="TorannGeoIPGeoIPServiceProvider" --tag=config
Ця команда публікує файл конфігурації в config/geoip.php
.
Дізнайтеся про геолокацію за допомогою IP-адреси
Ми всі готові отримувати деталі геолокації за допомогою IP-адреси. Бібліотека надає метод, якому потрібно передати фактичну IP-адресу. Натомість ви отримуєте інформацію про геолокацію IP-адреси.
Помістіть код нижче у свою програму, щоб отримати деталі IP.
$arr_ip = geoip()->getLocation('YOUR_IP_ADDRESS_HERE');
print_r($arr_ip);
echo $arr_ip->country; // get a country
echo $arr_ip->currency; // get a currency
Під час використання бібліотеки, можливо, ви отримаєте помилку "Цей магазин кеш-пам’яті не підтримує тегування" з BadMethodCallException. Якщо так, просто змініть наведений нижче рядок із config/geoip.php
файлу.
Замінити
'cache_tags' => ['torann-geoip-location'],
С
Очистіть кеш конфігурації за допомогою команди:
php artisan config:cache
Тепер спробуйте ще раз запустити свій код. Цього разу ви повинні отримати результат.
Сподіваюся, ви дізналися, як інтегрувати GeoIP на веб-сайті Laravel. Будь ласка, поділіться своїми думками та пропозиціями в розділі коментарів нижче.
Пов’язані статті
- Знайдіть геолокацію за допомогою IP-адреси безкоштовно в PHP
- Посібник для початківців для перевірки Laravel
- Як реєструвати запит у Laravel