Skip to content

emka.web.id

writing knowledge, recording civilization

Menu
  • Home
  • Tutorial
  • Search
Menu

Cara Menambahkan Geolocation di PHP

Posted on May 18, 2024

Ingin membuat aplikasi Anda lebih menarik dan bermanfaat bagi pengguna? Menambahkan fitur Geolocation adalah solusinya!

Geolocation memungkinkan aplikasi Anda mengetahui lokasi pengguna berdasarkan alamat yang mereka masukkan. Dengan informasi ini, aplikasi Anda dapat:

  • Mencari layanan terdekat: Bantu pengguna menemukan restoran, bank, SPBU, atau layanan lain yang ada di sekitar mereka.
  • Menghitung jarak: Hitung jarak dari pengguna ke suatu lokasi, misalnya untuk aplikasi navigasi atau pemesanan transportasi online.
  • Menampilkan informasi lokal: Sesuaikan konten aplikasi dengan lokasi pengguna, seperti menampilkan berita atau promo yang relevan.

Selain itu, Geolocation juga bermanfaat untuk Anda sebagai developer:

  • Mematuhi peraturan: Membantu Anda memenuhi persyaratan tertentu yang mungkin berlaku di suatu wilayah terkait dengan data pengguna.
  • Menganalisa pengguna: Memahami demografi dan lokasi pengguna untuk pengembangan aplikasi selanjutnya.

Geolocation Gratis dengan PHP

Kabar baiknya, Anda bisa memanfaatkan fitur Geolocation secara gratis menggunakan API dari Cloudmersive. API ini memungkinkan Anda melakukan hingga 800 pencarian lokasi per bulan.

Apa yang kita butuhkan?

  1. API Key Cloudmersive: Daftar gratis di Cloudmersive untuk mendapatkan API key Anda.
  2. PHP Client: Instal library Cloudmersive di project Anda menggunakan Composer:
composer require cloudmersive/cloudmersive_validate_api_client

Mulai Menggunakan Geolocation dengan PHP

Setelah menyiapkan yang dibutuhkan, mari kita lihat contoh kode PHP untuk menggunakan API Geolocation:

<?php
require_once(__DIR__ . '/vendor/autoload.php');

// Ganti 'YOUR_API_KEY' dengan API key Anda
$config = Swagger\Client\Configuration::getDefaultConfiguration()->setApiKey('Apikey', 'YOUR_API_KEY');

$apiInstance = new Swagger\Client\Api\AddressApi(
    
    
    new GuzzleHttp\Client(),
    $config
);

// Contoh format alamat yang akan dicari
$input = new \Swagger\Client\Model\ValidateAddressRequest();
$input->setStreetAddress("4695 Chabot Drive");
$input->setCity("Pleasanton");
$input->setStateOrProvince("California");
$input->setPostalCode("94588");
$input->setCountryFullName("United States");
$input->setCountryCode("string");

try {
    $result = $apiInstance->addressGeocode($input);
    // Hasil pencarian akan menampilkan:
    // - ValidAddress (true/false): Apakah alamat tersebut valid
    // - Latitude: Latitude lokasi
    // - Longitude: Longitude lokasi
    print_r($result);
} catch (Exception $e) {
    echo 'Error: ', $e->getMessage(), PHP_EOL;
}
?>

Penjelasan Kode:

  • Baris ke-3: Memuat library Cloudmersive yang sudah diinstal.
  • Baris ke-6 sampai 13: Mengatur konfigurasi API dengan memasukkan API key Anda.
  • Baris ke-16 sampai 22: Membuat objek untuk menyimpan informasi alamat yang akan dicari.
  • Baris ke-25: Memanggil fungsi addressGeocode dari API untuk melakukan pencarian lokasi.
  • Baris ke-27: Menampilkan hasil pencarian berupa informasi validitas alamat, latitude, dan longitude.
  • Baris ke-29 sampai 33: Menangkap error jika terjadi kesalahan saat proses pencarian.

Mulai Gunakan Geolocation Sekarang!

Dengan mengikuti langkah-langkah di atas dan sedikit modifikasi kode untuk menyesuaikan dengan kebutuhan aplikasi Anda, Anda bisa dengan mudah menambahkan fitur Geolocation dan meningkatkan pengalaman pengguna!

Terbaru

  • AI Made Everything Faster, Including Bad Decisions
  • Raspberry Pi Desktop Available of PC and Mac, Based on Debian 13
  • Why I Stopped Yelling at My PC When Error; Getting Windows 11 Voice Isolation and Access to Actually Work
  • Berobat Kanker ke Malaysia: Berapa Biayanya dan Apa Saja yang Perlu Disiapkan?
  • Stop Sending Every Prompt to the Biggest AI Model You Can Find
  • Stop Building AI Agents from Scratch: My Pick for the Best Native Windows Setup
  • Jev Is Faster and Cheaper, But I Still Recommend Clef. Here’s Why.
  • Weird XCP-NG Bug or Feature? Enable Maintenance Mode = Host Not Enough Memory
  • Vinix OS: Another OS That Want to Beat Linux, Try it!
  • Trying NVX, An Ultra-Light Micro-VM Sandbox from Microsoft
  • Learning NocoDB from Scratch: Creating a Simple Greenhouse App
  • How RHEL 10.2 Quietly Turned Into an Absolute Security Beast
  • Grab Videos from Anywhere with ReClip (Can Running Locally)
  • Jumped onto Ubuntu 26.04 LTS? Here’s How to Add a New User Account
  • Tutorial Cara Install WPS Office di Linux (Alternatif Microsoft Office)
  • Tutorial Upgrade Server Ubuntu 24.04 LTS ke Ubuntu 26.04 LTS dengan Aman
  • Inilah Alasan kenapa akun TikTok dibatasi tidak bisa klaim koin dan masalah pembatasan lainnya?
  • Apa penyebab gagal kirim SMS ke 89888 padahal pulsa masih ada?
  • Mengenal Donghua: Kenapa Animasi dari Tiongkok Ini Lagi Naik Daun Banget
  • OpenAI Bocorin Data Gambar Pengguna? Ini Kabar Terbaru Soal Insiden AI yang Bikin Heboh
  • Kenapa Postingan Instagram Kalian Sepi Like Padahal Followers Udah Banyak? Ini Rahasianya
  • Cara Menambah View Story Instagram Gratis Biar Nggak Sia-sia
  • Kenapa View TikTok Kalian Mentok di Angka Kecil dan Cara Ngatasinnya
  • Imbas Pesatnya Laporan CVE, Ubuntu Bakal Rilis Kernel Update Tiap Dua Minggu
  • Cara Gampang Cari Kata di Google Sheets Pakai Laptop sama HP
  • Kabar Terbaru Antigravity SDK: Sekarang Bisa Pakai Model Lokal Kayak Gemma 4 26B Tanpa Perlu Internet
  • Kabar Terbaru Model K2 Horizon Dirilis: MoVA 36B EXL3 Buat Kalian yang Punya GPU Beragam
  • Ini Alasan Kenapa Kalian Harus Cek Masa Dukungan HP Android Kalian Sekarang Juga
  • Cara Cek Followers Baru Asli atau Bot Tanpa Harus Ngitung Satu-Satu
  • Claude Opus 5.5 Baru Rilis, Bikin AI Kalian Jadi Jauh Lebih Powerfull!
  • Canonical: Ubuntu coming soon to Snapdragon X2 Series platforms
  • Finally, wolfSSL adds post-quantum algorithms!
  • How to Run Gemma Embedding Models Using Docker
  • Deploy Nginx Rootful Container with Podman
  • How to Sandboxing Browser on Linux Desktop with Flatpak
  • Pruna AI Release their Qwen-Image 2.1 LoRA Adapter, 6x Faster than Regular Qwen
  • The Rise and Fall of the Coding Holy Grail: Is Stack Overflow Just AI Fuel Now?
  • Zyphra is The Pioneer, Why Everyone is Suddenly Obsessed with AMD and Not Just Nvidia Anymore
  • Stop Trusting Your Prompts to Save Your Business Data
  • How to Automate Your Entire SEO Strategy Using a Swarm of 100 Free AI Agents Working in Parallel
  • Lagi rame dicari pemain BUSSID, ini info soal Mod Ragasa Herex sampe FAW JH6 Ade Iskandar
  • Gerakan 7 Kebiasaan Anak Indonesia Hebat, cuma tugas sekolah atau harus kompak sama orang tua di rumah?
  • Siapa sebenarnya pemilik baru SPBU Shell di Indonesia? Kenalan sama Sefas Group dan Isla Energy
  • Lagi rame soal dugaan keracunan di restoran Korea 88 SEOUL Bandung, ini info lengkapnya buat warga
  • Lagi rame di TikTok, sebenarnya siapa sih Titut yang judul filmnya diganti-ganti itu?

©2026 emka.web.id | Design: Newspaperly WordPress Theme