zuverlässige Benutzer-browser-Erkennung mit php

Versuch zu erkennen, den browser eines Benutzers mit PHP nur, ist $_SERVER['HTTP_USER_AGENT'] eine zuverlässige Möglichkeit? Sollte ich stattdessen entscheiden sich für die get_browser Funktion? die einen finden Sie bringt genauere Ergebnisse?

Wenn diese Methode ist pragmatisch, ist es schlecht beraten, es zu benutzen für die Ausgabe relevanten CSS-links, zum Beispiel:

if(stripos($_SERVER['HTTP_USER_AGENT'],"mozilla")!==false)
   echo '<link type="text/css" href="mozilla.css" />';

Bemerkte ich diese Frage, allerdings wollte ich klären, ob das gut für CSS-oriented detection.

UPDATE:
etwas wirklich verdächtig: ich habe versucht echo $_SERVER['HTTP_USER_AGENT']; auf IE 7 und das ist, was es Ausgang:

Mozilla/4.0 (compatible; MSIE 7.0;
Windows NT 6.0; SLCC1; .NET CLR
2.0.50727; Media Center PC 5.0; .NET CLR 3.5.30729; .NET CLR 3.0.30618)

Safari gab etwas komisch mit "mozilla" in es auch. Was gibt?

  • "Mozilla/4.0" - bit ist es für legacy-Gründen... auch im IE8.
  • IE identifiziert sich für ruhige einiger Zeit nun als Mozilla 4.0. Ich habe gelesen, dass Sie Taten dies aus Gründen der Kompatibilität, aber nicht finden können, die Quelle jetzt. Wenn ich denke, ich würde sagen, dies ist ein Trümmer von NetScape/IE Zeit.
  • User-Agent ist nicht zuverlässig. Aber es ist der einzige Weg, zu erraten.
  • webaim.org/blog/user-agent-string-history
  • Nett, danke!
  • Funktioniert ohne Probleme auf der neuesten version von firefox.
  • Wo sind die vielen (guten) browser-Detektoren um. Versuchen Sie, auf der hier aufgeführten github.com/ThaDafinser/UserAgentParser

InformationsquelleAutor Gal | 2010-02-13
Schreibe einen Kommentar