Distance
This Distance PHP class can calculate the distance between two latitude/longitude locations using Math functions in PHP. No external API's are called.
Install / Use
/learn @jeroendesloovere/DistanceREADME
Distance class
Get distance between two locations using PHP. The distance is getting calculated based on latitude and logitude variables and without using any other external class.
Usage
Installing using Composer
When using Composer you can always load in the latest version.
{
"require": {
"jeroendesloovere/distance": "1.0.*"
}
}
Check in Packagist.
Example
Setting our example data
use JeroenDesloovere\Distance\Distance;
// first location
$latitude1 = '50.8538510000';
$longitude1 = '3.3550450000';
// second location
$latitude2 = '50.8325600000';
$longitude2 = '3.4787650000';
Get distance between two locations
$distance = Distance::between(
$latitude1,
$longitude1,
$latitude2,
$longitude2
);
// dump data
echo 'Distance between the two locations = ' . $distance . ' km';
Get closest distance from location 1 to one of the two locations (2 and 3)
// third location
$latitude3 = '50.8865040000';
$longitude3 = '3.4320850000';
// define multiple items
$items = array(
array(
'title' => 'location 2',
'latitude' => $latitude2,
'longitude' => $longitude2
),
array(
'title' => 'location 3',
'latitude' => $latitude3,
'longitude' => $longitude3
)
);
$distance = Distance::getClosest(
$latitude1,
$longitude1,
$items
);
// dump data
echo 'The closest location to location 1 is ' . $distance['title'] . ' and the distance between them is ' . $distance['distance'] . ' km';
Documentation
The class is well documented inline. If you use a decent IDE you'll see that each method is documented with PHPDoc.
Contributing
It would be great if you could help us improve this class. GitHub does a great job in managing collaboration by providing different tools, the only thing you need is a GitHub login.
- Use Pull requests to add or update code
- Issues for bug reporting or code discussions
- Or regarding documentation and how-to's, check out Wiki More info on how to work with GitHub on help.github.com.
License
The module is licensed under MIT. In short, this license allows you to do everything as long as the copyright statement stays present.
Related Skills
node-connect
346.8kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
107.6kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
346.8kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
346.8kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
