Eine automatische Spracherkennung ist auf mehrsprachigen Internetseiten gängiger Internet Standard. Gerne werden hier die Begriffe Geoip und Spracheinstellung des Browsers in einen Topf geworfen. Beides sind jedoch unterschiedliche Techniken, die unterschiedliche Ziele verfolgen. Über die so genannte Geoip, kann man den Standort der Einwahl IP des Users ermitteln und über $_SERVER[‚HTTP_ACCEPT_LANGUAGE‘] die Spracheinstellung des Browsers. Der über die Geoip ermittelte Standort muss nicht der tatsächliche Standort des Users zu sein. In meinem Falle wird mir heute Dinslaken statt Duisburg angezeigt. Das wechselt auch gerne. Bei Firmennetzwerken kann der über Geoip ermittelte Standort noch weiter weg sein. Ermittelt man nun die Sprache über meine Geoip kommt man mit beiden Städten auf Deutsch. Betrachtet man jedoch die Tatsache das auch Ausländer in Duisburg wohnen merkt man schnell, daß man die Spracherkennung eines Userslieber nicht über die Geoip ermitteln sollte.
Es ist jedoch sehr wahrscheinlich, dass ein ausländischer Internetuser aus Deutschland die Spracheinstellung seines Browsers auf seine Bedürfnisse angepasst hat. Diese Einstellung kann man über die PHP Server Variable HTTP_ACCEPT_LANGUAGE Ermitteln. Möchte man also möglichst viele Informationen zu seinem User bekommen kann man seine Sprache und seinen Standort ermitteln und ihn dadurch einen gezielten Service bieten.
Weiterführende Internet Links:
Ausgabe der eigenen Geoip Daten
http://www.geoiptool.com/de/
Alle PHP Server Variablen mit Best Practice Lösungen im Überblick
http://www.php.net/manual/de/reserved.variables.server.php
Typo3 Extension zur User Spracherkennung
http://typo3.org/extensions/repository/view/rlmp_language_detection
Beispiel für automatische Spracherkennung über die Servervariable $_SERVER[‚HTTP_ACCEPT_LANGUAGE‘] mit PHP
http://stephan.straubel.net/index.php/2008/12/31/automatische-spracherkennung-in-php/