Current Location: Home> Latest Articles> PHP Practical Guide: Easily Implement Geofencing with Amap API

PHP Practical Guide: Easily Implement Geofencing with Amap API

M66 2025-06-22

What is Geofencing and Its Use Cases

Geofencing is a technology that defines a virtual geographic boundary and triggers predefined actions when a device enters or exits the area. It is widely applied in mobile app location services, electronic fence alarms, logistics tracking, and more. Amap API offers robust interface support to help developers quickly realize related functions.

Preparation: Registering Amap Developer Account and Obtaining API Key

To use Amap's geofencing features, first register an account on Amap Open Platform, create an application, and obtain the corresponding API key. Once you have the key, you can call the API interfaces in your PHP project to perform various operations.

Step 1: Initialize API Key and Configuration Parameters

Include the Amap SDK files, and configure the API key and base URL. Sample code is as follows:

<?php
// Include Amap API file
require_once 'path_to_amap_sdk/amap.php';
<p>// Initialize API key and basic parameters<br>
$config = array(<br>
'key' => 'your_api_key',<br>
'apiurl' => '<a rel="noopener" target="_new" class="" href="https://restapi.amap.com/v3/geofence/">https://restapi.amap.com/v3/geofence/</a>',<br>
);<br>
$amap = new AMap($config);<br>
?>

Step 2: Create a Geofence

By passing the fence name, center longitude and latitude, and radius (in meters) to the interface, you can create a geofence. Sample code:

<?php
// Create geofence
$data = array(
    'name' => 'Fence Name',
    'center' => 'longitude,latitude',
    'radius' => 'radius (meters)',
);
<p>$result = $amap->createGeoFence($data);</p>
<p>if ($result['status'] == 1) {<br>
// Fence creation successful<br>
echo "Geofence created successfully! Fence ID: " . $result['gid'];<br>
} else {<br>
// Fence creation failed<br>
echo "Geofence creation failed: " . $result['info'];<br>
}<br>
?>

Step 3: Query Geofence Information

You can query detailed geofence information by fence ID for management and debugging. Sample code:

<?php
// Query geofence
$data = array(
    'gid' => 'Fence ID',
);
<p>$result = $amap->queryGeoFence($data);</p>
<p>if ($result['status'] == 1) {<br>
// Query successful<br>
echo "Fence Name: " . $result['info']['name'];<br>
echo "Fence Center: " . $result['info']['center'];<br>
} else {<br>
// Query failed<br>
echo "Query failed: " . $result['info'];<br>
}<br>
?>

Step 4: Delete a Geofence

When the fence is no longer needed, delete it by calling the deletion interface with the fence ID. Sample code:

<?php
// Delete geofence
$data = array(
    'gid' => 'Fence ID',
);
<p>$result = $amap->deleteGeoFence($data);</p>
<p>if ($result['status'] == 1) {<br>
// Deletion successful<br>
echo "Geofence deleted successfully!";<br>
} else {<br>
// Deletion failed<br>
echo "Geofence deletion failed: " . $result['info'];<br>
}<br>
?>

Conclusion

This article introduced how to implement geofence creation, querying, and deletion using Amap API in a PHP environment. With just a few configuration steps, it can meet various location-based business needs. Developers can also combine other Amap API interfaces to further enhance intelligent location management based on specific application scenarios.