Wenn es um die Benutzerbrowsererkennung in PHP geht, haben Sie die Wahl zwischen der Verwendung von $_SERVER ['HTTP_USER_AGENT'] und die Funktion get_browser entsteht. Jeder Ansatz hat seine Vor- und Nachteile.
$_SERVER['HTTP_USER_AGENT'] stellt die rohe Benutzeragentenzeichenfolge bereit, die Informationen über den Browser, das Betriebssystem und andere clientspezifische Details enthält. Diese Methode wird weithin unterstützt und bietet einen umfassenden Datensatz zur Erkennung von Browsern. Es ist jedoch wichtig zu beachten, dass Benutzeragenten gefälscht oder geändert werden können, was möglicherweise zu ungenauen Ergebnissen führt.
Andererseits ist get_browser eine integrierte PHP-Funktion, die die Zeichenfolge des Benutzeragenten analysiert und eine zurückgibt Array mit browserspezifischen Informationen. Es soll das Identifizieren und Extrahieren bestimmter Browserattribute erleichtern. get_browser basiert jedoch auf einem vorkompilierten Datensatz, der möglicherweise nicht immer für alle Benutzeragenten aktuell oder genau ist, insbesondere für neue oder weniger verbreitete Browser.
Die Verwendung von $_SERVER['HTTP_USER_AGENT'] zur Ausgabe relevanter CSS-Links mag zwar einfach erscheinen, gilt jedoch nicht als bewährte Methode. Browser-Benutzeragenten können erheblich variieren und unerwartete Elemente enthalten. Beispielsweise können moderne Versionen von Internet Explorer „Mozilla“ in ihren Benutzeragentenzeichenfolgen enthalten, wie im bereitgestellten Update gezeigt.
Um ein zuverlässiges CSS-Targeting sicherzustellen, wird empfohlen, stattdessen Medienabfragen oder CSS-Funktionserkennung zu verwenden sich ausschließlich auf User-Agent-Strings zu verlassen.
Das folgende Code-Snippet bietet eine umfassendere und zuverlässigere Methode für die Browser-Erkennung mit $_SERVER['HTTP_USER_AGENT']:
if (stripos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== FALSE) {
echo 'Internet Explorer';
} elseif (stripos($_SERVER['HTTP_USER_AGENT'], 'Trident') !== FALSE) { // For supporting IE 11
echo 'Internet Explorer';
} elseif (stripos($_SERVER['HTTP_USER_AGENT'], 'Firefox') !== FALSE) {
echo 'Mozilla Firefox';
} elseif (stripos($_SERVER['HTTP_USER_AGENT'], 'Chrome') !== FALSE) {
echo 'Google Chrome';
} elseif (stripos($_SERVER['HTTP_USER_AGENT'], 'Opera Mini') !== FALSE) {
echo "Opera Mini";
} elseif (stripos($_SERVER['HTTP_USER_AGENT'], 'Opera') !== FALSE) {
echo "Opera";
} elseif (stripos($_SERVER['HTTP_USER_AGENT'], 'Safari') !== FALSE) {
echo "Safari";
} else {
echo 'Something else';
}
Dieses Snippet sucht nach bestimmten Schlüsselwörtern innerhalb der Benutzeragentenzeichenfolge, um gängige Browser zu identifizieren. Es deckt gängige Browser wie Internet Explorer, Firefox, Chrome, Opera und Safari ab und behandelt Nuancen wie den Kompatibilitätsmodus von Internet Explorer mit „Trident“ und den einzigartigen Benutzeragenten von Opera Mini.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3