Hallo allen,
Ik ben nu al een week aan het zoeken waarom het scriptje dat ik heb niet draait.
De server draait met Ubuntu 16.04LTS server, en daar draait PHP 7 op.
Ik krijg totaal geen output van dit script.
Nu heb ik wel gelezen dat er mogelijk dingen zijn veranderd in syntaxing tov php5, maar ik weer nu echt even niet waar ik het in moet zoeken.
Het gaat om het volgende script:
<?
/*
* PHP code snippet to calculate the distance and bearing between two
* maidenhead QTH locators.
*
* Written by Fabian Kurz, DJ1YFK; losely based on wwl+db by VA3DB.
*
* You can do whatever you want with this code.
*
*/
function valid_locator ($loc) {
if (ereg("^[A-R]{2}[0-9]{2}[A-X]{2}$", $loc)) {
return 1;
}
else {
return 0;
}
}
function loc_to_latlon ($loc) {
/* lat */
$l[0] =
(ord(substr($loc, 1, 1))-65) * 10 - 90 +
(ord(substr($loc, 3, 1))-48) +
(ord(substr($loc, 5, 1))-65) / 24 + 1/48;
$l[0] = deg_to_rad($l[0]);
/* lon */
$l[1] =
(ord(substr($loc, 0, 1))-65) * 20 - 180 +
(ord(substr($loc, 2, 1))-48) * 2 +
(ord(substr($loc, 4, 1))-65) / 12 + 1/24;
$l[1] = deg_to_rad($l[1]);
return $l;
}
function deg_to_rad ($deg) {
return (M_PI * $deg/180);
}
function rad_to_deg ($rad) {
return (($rad/M_PI) * 180);
}
function bearing_dist($loc1, $loc2) {
if (!valid_locator($loc1) || !valid_locator($loc2)) {
return 0;
}
$l1 = loc_to_latlon($loc1);
$l2 = loc_to_latlon($loc2);
$co = cos($l1[1] - $l2[1]) * cos($l1[0]) * cos($l2[0]) +
sin($l1[0]) * sin($l2[0]);
$ca = atan2(sqrt(1 - $co*$co), $co);
$az = atan2(sin($l2[1] - $l1[1]) * cos($l1[0]) * cos($l2[0]),
sin($l2[0]) - sin($l1[0]) * cos($ca));
if ($az < 0) {
$az += 2 * M_PI;
}
$ret[km] = round(6371*$ca);
$ret[deg] = round(rad_to_deg($az));
return $ret;
}
/* Example usage: Distance and heading from JO60LK to JO61UA: */
$bd = bearing_dist("JO60LK", "JO61UA");
echo "$bd[km]km, $bd[deg]deg";
?>
3.202 views