我有 2 个表。 一个包含企业及其地址的列表 另一个带有邮政编码列表及其经度和纬度。 我有一个接受邮政编码和英里数来检查半径的表格。
所有半径的东西都来 self 在网上找到的脚本。 我需要的是回应半径内的企业条目。
到目前为止,我有 2 个查询。 一个获取数据库中的所有条目邮政编码 另一个获取我在表格中输入的范围内的所有邮政编码
我正在使用 array_intersect 来查找匹配项。 我的问题是它只返回找到的第一个条目。 我确定我需要一个 while 循环来执行此操作,但我不知道该怎么做。
代码片段:
$insideRadius = array_intersect($data, $zipArray);
$data 是业务表中的所有邮政编码。 $zip 数组是范围内的所有邮政编码。
最佳答案
您不能只选择在 $zipArray 中列出邮政编码的企业吗?
"SELECT * FROM business WHERE zipcode IN (". implode(",", $zipArray) . ")"
在 PHP 中你可以像这样运行它:
$result = mysql_query("SELECT * FROM business WHERE zipcode IN (" . implode(",", $zipArray) . ")");
while ($row = mysql_fetch_assoc($result))
{
echo $row["name"] . "<br />";
echo $row["zipcode"] . "<br />";
}
关于php - 使用 array_intersect,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11619208/