【发布时间】:2015-07-15 12:37:19
【问题描述】:
我有两个如下所示的数组:
array(1) {
["x8hQz"]=>
array(1) {
["2014-07-16"]=>
array(20) {
[0]=>
array(2) {
["latitude"]=>
string(16) "39.9298775948310"
["longitude"]=>
string(17) "-87.3510829502270"
}
[1]=>
array(2) {
["latitude"]=>
string(16) "39.9298960856350"
["longitude"]=>
string(17) "-87.3511097005120"
}...
因此,每个数组都包含一个设备 ID、日期列表和每个日期的 GPS 位置列表。每天可能有不同数量的 GPS 位置。数组是相同的,我想将数组与其自身进行比较,并根据它们与数组中其他日期的匹配程度来删除日期/GPS 位置组,这样当我完成时,其中一个数组只包含具有唯一位置列表的日期在每个设备的基础上。我想比较数组中的天数,如果一天内的每个值对都在基于 GPS 位置的 x 英尺内,那么我将丢弃匹配的天数数据。
我正计划通过两个数组进行 foreach,但是由于我现在设置了它,因此我一天只有一个密钥对来比较所有其他密钥对,因此我无法将一整天与列表进行比较另一个数组中的天数。
foreach ($trackArray as $deviceKey => $deviceValue)
{
//echo $deviceKey . $deviceValue . "\n";
foreach ($deviceValue as $dateKey => $dateValue)
{
//echo $dateKey . $dateValue . "\n";
foreach ($dateValue as $locationKey => $locationValue)
{
//echo $locationKey . $locationValue . "\n";
//echo $trackArray[$deviceKey][$dateKey][$locationKey]['latitude'];
foreach ($finalTrackArray[$deviceKey] as $finalDateKey => $finalDateValue)
{
//echo $finalDateKey . $finalDateValue . "\n";
...
}
}
}
}
【问题讨论】:
标签: php multidimensional-array