php - Laravel 5.2 按距用户邮政编码的距离搜索用户

标签 php mysql laravel search geo

我有一个关于 Laravel 5.2 的问题,并尝试按距离搜索用户。

到目前为止,这是我的数据库布局。

用户 - 用户表不包含个人信息。

users_info - 该表包含用户信息(邮政编码和地址),并通过相同的 ID 连接(user_id > id)

我还有一个名为 postcodes_geo 的包含邮政编码信息的表,其中包含字段

id int(11)
postcode varchar(5)
suburb varchar(100)
state varchar(4)
latitude decimal(6,3)
longitude decimal(6,3)

现在我很迷茫,不知道如何通过距正在搜索的用户邮政编码的距离来搜索用户。我是 PHP 新手,因为我只是一名前端开发人员。

是否有其他人之前设置过此类搜索或者可以给我提示?

最佳答案

您可以使用此软件包:https://github.com/alexpechkarev/google-maps 使用它,您可以计算邮政编码或地址的距离。

如果您总是计算相对于固定地点的距离,请尝试在创建用户信息时将距离也保存在表中。

现在,如果您需要动态计算距离,我会首先选择同一郊区内的所有用户(如果您需要获取距离最短的用户),然后使用上面的包使用他们的距离来计算距离邮政编码或地址。

这只是一个想法。但这会起作用。您可以进一步给出更多参数来获取用户集合。

关于php - Laravel 5.2 按距用户邮政编码的距离搜索用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36121740/

相关文章:

php - 有没有更好的方法来执行类似于 SQL Server 2008 中的 LIMIT 的操作?

PHP类系统: Change Image Attribute on Displayed Listing if Record is within User Favorites(pivot table)

Laravel Mix 不组合样式

php - 无法显示 SELECT 结果 sql

php - 将foreach循环中的多个数组POST值插入到mysql中

php - 查询一列中的多个值

Mysql从两个或多个变量进行内连接?

php - Laravel 与数据表 : searching encrypted data

php - 在 pdo 准备好的语句中执行多插入或许多不同的插入更好/更快吗?

php - 如何使用php从特定电子邮件地址获取邮件信息并将标题信息存储到mysql数据库中