Heim  >  Artikel  >  Backend-Entwicklung  >  PHP bestimmt den Typ des Client-Browsers

PHP bestimmt den Typ des Client-Browsers

巴扎黑
巴扎黑Original
2016-11-22 15:32:341897Durchsuche

1. Verwenden Sie $_SERVER['HTTP_USER_AGENT'], um eine PHP-Methode zur Bestimmung des Browsertyps zu schreiben.

function my_get_browser(){
if(empty($_SERVER['HTTP_USER_AGENT'])){
return 'Befehlszeile, der Roboter ist da! ';
}
if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'MSIE 9.0')){
return 'Internet Explorer 9.0';
}
if (false!==strpos($_SERVER['HTTP_USER_AGENT'],'MSIE 8.0')){
return 'Internet Explorer 8.0';
}
if(false!==strpos($_SERVER[ 'HTTP_USER_AGENT'],'MSIE 7.0')){
return 'Internet Explorer 7.0';
}
if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'MSIE 6.0') ){
return 'Internet Explorer 6.0';
}
if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'Firefox')){
return 'Firefox';
}
if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'Chrome')){
return 'Chrome';
}
if(false!==strpos ($_SERVER['HTTP_USER_AGENT'],'Safari')){
return 'Safari';
}
if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'Opera') ){
return 'Opera';
}
if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'360SE')){
return '360SE';
}
}

$_SERVER['HTTP_USER_AGENT'] wird hier hauptsächlich verwendet. Diese Konstante wird verwendet, um zu überprüfen, welches Betriebssystem (einschließlich Versionsnummer) der Browser verwendet, den der Besucher beim Surfen auf der Seite verwendet (einschließlich). Versionsnummer) und Benutzereinstellungen. Die Verwendung ist sehr einfach. Drucken Sie es einfach aus dem Programm aus und Sie werden es verstehen.

2. Darüber hinaus kann PHP den Browsertyp auch über die PHP-Systemfunktion get_browser() ermitteln. Diese Funktion gibt einige Leistungsdaten des Browsers des Benutzers zurück. Diese Funktion misst die Leistung des Browsers des Benutzers, indem sie die Datei browscap.ini des Benutzers konsultiert. Bei Erfolg gibt die Funktion ein Objekt oder Array mit den Browserinformationen des Benutzers zurück, bei Fehlschlag gibt sie „Falsch“ zurück.

get_browser Syntax

get_browser(user_agent,return_array)

Die Bedeutung der Parameter wird wie folgt erklärt:

user_agent ist optional. Gibt den Namen des HTTP-Benutzeragenten an. Der Standardwert ist der Wert von $HTTP_USER_AGENT. Sie können diesen Parameter umgehen, indem Sie NULL festlegen.

return_array Optional. Wenn dieser Parameter auf true gesetzt ist, gibt diese Funktion ein Array anstelle eines Objekts zurück.

Die Browserinformationen, die PHP über $_SERVER['HTTP_USER_AGENT'] und get_browser erhält, können wir anhand des folgenden Beispiels verstehen:

echo $_SERVER[ 'HTTP_USER_AGENT'] . "

";
$browser = get_browser(null,true);
print_r($browser);
?>

Das Ergebnis wird ausgegeben:

Mozilla/4.0
(kompatibel; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)

Array(
[browser_name_regex] => ^mozilla/..0
(kompatibel; msie 6.0.*;.*windows nt 5.1.*.net clr.*).*$
[browser_name_pattern] = > ;Mozilla/?.0
(kompatibel; MSIE 6.0*;*Windows NT 5.1*.NET CLR*)*
[parent] => 🎜 >[netclr] => 1
[browser] => IE
[version] => 6.0
[majorver] => 6
[minorver] => 0
[css] => 2
[frames] => 1
[tables] => 1
[backgroundsounds] = > 1
[vbscript] => 1
[javascript] => 1
[javaapplets] => 1
[activexcontrols] => >[cdf] => 1
[aol ] =>
[beta] =>
[win16] =>
[crawler] =>
[stripper] =>
[wap] =>
[ak] =>
[sk] =>
)

Aber erhalten Sie den Kunden über die Funktion get_browser() von PHP. Die browserbezogenen Informationen sind bedingt, wenn Sie sie direkt verwenden , wird normalerweise der folgende Fehler gemeldet:

Warnung: get_browser() [function.get-browser]: browscap ini Directive not set in ……

Beim Abfragen des PHP-Handbuchs lautet die Erklärung: Um diese Funktion verwenden zu können, müssen Sie einen Konfigurationspunkt zur Datei browscap.ini in der Datei php.ini hinzufügen und seine Informationen, also müssen Sie die neueste Datei herunterladen, browscap.ini herunterladen und sie irgendwo auf dem Server ablegen. Wenn get_browser() verwendet wird, werden die erhaltenen Client-Informationen mit dieser Datei verglichen entsprechenden Typ.

Aus dem oben Gesagten geht hervor, dass es nicht billig ist, get_browser() zu verwenden, um den Browsertyp zu erhalten!

3. Es gibt eine andere Möglichkeit, den Browsertyp in PHP zu bestimmen, nämlich die Verwendung von Open-Source-Code, der von einem ausländischen Experten geschrieben wurde. Es gibt eine Website namens Mavrick im Ausland, die Projekte zu Browsern enthält, die sie schreibt. Die neueste Klasse, die ich gesehen habe, ist auf Plattformen wie iPhone, BlackBerry, Win, Mac, Linux, OS, BeOS usw. erhältlich. Man kann sagen, dass die Browserinformationsfunktion sehr leistungsfähig ist. Wenn Sie diese Datei herunterladen, sollten Sie entsprechend der von Ihnen verwendeten PHP-Version auswählen. Laden Sie den spezifischen Code dieser Klasse herunter und studieren Sie ihn selbst:

browser-v1-9

Die Methode zur Verwendung dieser Klasse ist ebenfalls sehr einfach, wie folgt:

$obj_browser = neuer Browser; //Eine Instanz dieser Klasse erstellen
$obj_browser->getBrowser(); //Zugehörige Funktionen aufrufen, um den Browsernamen zu erhalten
$obj_browser->getPlatform(); Funktionen zum Abrufen des Systemnamens
$obj_browser->isMobile(); // Bestimmen Sie, ob das vom Besucher verwendete Gerät ein iPhone, iPad oder ein Computer (PC) ist


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn