functie in functie
Berta Pappens
08/11/2023 09:20:19hallo,
Is het mogelijk om in een functie een andere functie aan te spreken ??
de code ziet er dan zo uit, maar blijkbaar werkt dit niet
de foutmelding is :
Fatal error: Cannot redeclare DMSToDecimal() (previously declared
Is het mogelijk om in een functie een andere functie aan te spreken ??
de code ziet er dan zo uit, maar blijkbaar werkt dit niet
de foutmelding is :
Fatal error: Cannot redeclare DMSToDecimal() (previously declared
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
function BeforeProcessRowList(&$data, $pageObject)
{
function DMSToDecimal($dms) {
echo $dms ;
preg_match('/([NS])(\d+) (\d+\.\d+)/', $dms, $latMatches);
preg_match('/([EW])(\d+) (\d+\.\d+)/', $dms, $lonMatches);
if (!empty($latMatches)) {
$latDirection = $latMatches[1];
$latDegrees = (float)$latMatches[2];
$latMinutes = (float)$latMatches[3];
$latitude = ($latDirection === 'N') ? ($latDegrees + ($latMinutes / 60)) : -($latDegrees + ($latMinutes / 60));
} else {
return false; // Invalid latitude format
}
if (!empty($lonMatches)) {
$lonDirection = $lonMatches[1];
$lonDegrees = (float)$lonMatches[2];
$lonMinutes = (float)$lonMatches[3];
$longitude = ($lonDirection === 'E') ? ($lonDegrees + ($lonMinutes / 60)) : -($lonDegrees + ($lonMinutes / 60));
} else {
return false; // Invalid longitude format
}
return ['latitude' => $latitude, 'longitude' => $longitude];
}
$dmsLatitude=$data["Breedtegraad"];
$dmsLongitude=$data["Lengtegraad"];
$coordinates = DMSToDecimal($dmsLatitude . " " . $dmsLongitude);
if ($coordinates) {
$latitude = $coordinates['latitude'];
$longitude = $coordinates['longitude'];
echo "Breedtegraad (decimaal): $latitude<br>";
echo "Lengtegraad (decimaal): $longitude<br>";
} else {
echo "Ongeldige DMS-cordinaten.";
}
return true;
;
}
{
function DMSToDecimal($dms) {
echo $dms ;
preg_match('/([NS])(\d+) (\d+\.\d+)/', $dms, $latMatches);
preg_match('/([EW])(\d+) (\d+\.\d+)/', $dms, $lonMatches);
if (!empty($latMatches)) {
$latDirection = $latMatches[1];
$latDegrees = (float)$latMatches[2];
$latMinutes = (float)$latMatches[3];
$latitude = ($latDirection === 'N') ? ($latDegrees + ($latMinutes / 60)) : -($latDegrees + ($latMinutes / 60));
} else {
return false; // Invalid latitude format
}
if (!empty($lonMatches)) {
$lonDirection = $lonMatches[1];
$lonDegrees = (float)$lonMatches[2];
$lonMinutes = (float)$lonMatches[3];
$longitude = ($lonDirection === 'E') ? ($lonDegrees + ($lonMinutes / 60)) : -($lonDegrees + ($lonMinutes / 60));
} else {
return false; // Invalid longitude format
}
return ['latitude' => $latitude, 'longitude' => $longitude];
}
$dmsLatitude=$data["Breedtegraad"];
$dmsLongitude=$data["Lengtegraad"];
$coordinates = DMSToDecimal($dmsLatitude . " " . $dmsLongitude);
if ($coordinates) {
$latitude = $coordinates['latitude'];
$longitude = $coordinates['longitude'];
echo "Breedtegraad (decimaal): $latitude<br>";
echo "Lengtegraad (decimaal): $longitude<br>";
} else {
echo "Ongeldige DMS-cordinaten.";
}
return true;
;
}