Hallo Andrea,
ich möchte gerne mit PHP die Browser-Locale des Users auslesen.
Ist das mit PHP möglich und wie würde man da vorgehen?
wozu?
Entschuldige, die Frage klingt jetzt schroff und wenig motivierend. Aber ein Vorhaben, wie du es skizzierst (Sprache automatisch auswählen) ist, so reizvoll und sinnvoll es klingen mag, nicht unbedingt das Gelbe vom Ei.
Znächst mal: Was meinst du mit Browser-Locale?
Die Sprache, in der der Browser (bzw. das System installiert ist? Das ist problematisch, weil etliche Browser vielleicht nicht in Deutsch verfügbar sind, deren Benutzer aber trotzdem deutschsprachige Seiten sehen möchten. Abgesehen davon wüsste ich nicht, wie du diese Information bereits serverseitig abfragen kannst.
Oder doch eher die Sprache, die in den jeweiligen Browsereinstellungen als Preferred Language eingestellt ist? Das bekommt der Server (eventuell) sogar über den HTTP-Header Accept-Language mitgeteilt.
In beiden Fällen gibt es aber genügend Fälle, wo deine Vorauswahl sehr wahrscheinlich falsch liegt (Stichwort Internet-Café). Ich halte es daher für günstiger (und auf jeden Fall einfacher), wenn man sich auf den Standpunkt stellt: Das ist 'ne deutsche Seite, die Default-Sprache ist Deutsch. Oder auch: Das Internet ist international, die Default-Sprache ist Englisch. Lege es fest, wie es dir sinnvoll erscheint, und lass den Besucher eine andere Sprache auswählen, wenn er das denn möchte.
Ich möchte ungern abfragen
if ( $lang != 'en' || $lang != 'de' || $lang != 'fr' || $lang != 'es')
{
$lang = 'en';
}
Das muss ja auch nicht sein, geht doch sehr viel eleganter mit in_array().
Schönen Tag noch,
Martin
--
Computer lösen für uns Probleme, die wir ohne sie gar nicht hätten.