Manchmal ist es ganz praktisch zu wissen, welchen Browser der User einsetzt. Beispielsweise kann man den User, je nach Browser, auf eine andere Seite umleiten, sodass er eine ,auf den Browser optimiere, Webseite angezeigt bekommt. Dazu muss man die Variable $_SERVER['HTTP_USER_AGENT'] analysieren. Diese liefert z.B. einen Wert wie diesen: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.5) Gecko/20061201 Firefox/2.0.0.5 (Ubuntu-feisty).
Um diese Wert auf einen Browser zu überprüfen, sucht man einfach bestimmte Wörter innerhalb des HTTP_USER_AGENTs.
<?php
if(stristr($_SERVER['HTTP_USER_AGENT'], 'MSIE')) print "Dein Browser ist der Internet Explorer";
if(stristr($_SERVER['HTTP_USER_AGENT'], 'Firefox')) print "Dein Browser ist der Firefox";
if(stristr($_SERVER['HTTP_USER_AGENT'], 'Opera')) print "Dein Browser ist Opera";
if(stristr($_SERVER['HTTP_USER_AGENT'], 'Safari')) print "Dein Browser ist Safari";
if(stristr($_SERVER['HTTP_USER_AGENT'], 'Konqueror')) print "Dein Browser ist der Konqueror";
?>
Wenn also z.B. “Firefox” enthalten ist, handelt es sich, wie ist es auch anders zu erwarten, um Firefox
So kann man also einfach jeden Browser aufspüren. Es gibt dabei nur einen Hacken, jeder kann seinen User Agent selber anpassen. Es ist somit also nicht sicher, dass der angezeigt Browser auch der vom User benutzte ist.
Außerdem sollte bedacht werden, dass es auch andere User Agents gibt, die relativ unbekannt sind. (Eigenentwicklungen, Suchmaschinenbots, RSS-Reader, Textbrowser, …)
0 Responses to “[Codeschnipsel] PHP Browser auslesen”