=

Daschmi's Notizblog

RSS Feed

Abstand zwischen zwei geografischen Punkten mittels PHP ermitteln über zwei Längen- /Breitengrade

Erstellt in PHP am 31. Mai 2018

Mit folgender PHP Funktion kann der Abstand in km zwischen zwei Punkten die über Längengrad und Breitengrad gegeben sind ermittelt werden.

/**
  * Ermittelt den Abstand in km zwischen zwei Geo Positionen
  */
function getDistance($lat1, $lng1, $lat2, $lng2) {

  $dist = sin(deg2rad($lat1)) * sin(deg2rad($lat2)) +  cos(deg2rad($lat1)) * cos(deg2rad($lat2)) * cos(deg2rad($lng1 - $lng2));
  $dist = rad2deg(acos($dist));

  $miles = $dist * 60 * 1.1515;

  return $miles * 1.609344;

}

E-Mail Adresse mittels Extbase in TYPO3 7/8/9 im Controller verschlüsseln

Erstellt in Sonstiges am 18. Mai 2018

Mit folgendem Code Block lassen sich Link auf E-Mail Adressen bereits im Controller verschlüsseln, ich hatte es mal gebraucht um die Links mittels JSON zu übergeben, hier konnte ich die FLUID Viewhelpers nicht nutzen.

$this->cObj = $this->configurationManager->getContentObject();
$link = $this->cObj->typoLink('text_to_Create_link', [
  'parameter' => 'info@domain.de'
]);

Variablen in anonymer Funktion verfügbar machen

Erstellt in Sonstiges am 20. April 2018

Möchte man Variablen an eine Anonyme Funktion / Inline Funktion übergeben, so kann ab PHP 7.1. die use Syntax verwendet werden. Hier am Beispiel eines uasort Callbacks:

uasort($marray, function($a, $b) use ($column) {

  if ($column === 'datum') return strtotime($a[$column])  strtotime($b[$column]);
  else return $a[$column]  $b[$column];

} );

Umleitung auf SSL mit .htpasswd Authorisierung/Schutz

Erstellt in Sonstiges am 17. April 2018

.htaccess Beispiel um zu verhindern, dass die Anmeldung/Authorisierung (.htaccess / .htpasswd Schutz) zweimal erscheint.

SetEnvIf %{SERVER_PORT} ^80$ NON_SSL

RewriteEngine On
RewriteCond %{SERVER_PORT} ^80$
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

AuthName "Restricted Access"
AuthType Basic
AuthUserFile .htpasswd
Order Deny,Allow
Deny from all
Satisfy any
Require valid-user
Allow from env=NON_SSL

Sleep in Javascript / Ausführung anhalten mittels async und await

Erstellt in Sonstiges am 31. Januar 2018

Um die Ausführung von Javascript anzuhalten, kann man Timeouts verwenden oder das async Schlüsselwort mit folgender Funktion:

function sleep(ms) {

  return new Promise(resolve => setTimeout(resolve, ms));

}

async function run() {

  await sleep(1000);
  alert("1 Sekunde pausiert");

}

run();

Mehr:



Bitte genehmigen Sie die Verwendung von Cookies dieser Website! Mehr Informationen

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close