Heim >Backend-Entwicklung >PHP-Problem >Wie stellt PHP fest, ob es auf einem Mobiltelefon oder einem PC geöffnet wird?
Im heutigen Zeitalter des mobilen Internets ist die Optimierung des Website-Designs zur Anpassung an die Nutzung verschiedener Endgeräte der Benutzer zu einer notwendigen Aufgabe geworden. Daher ist die Frage, wie man in PHP feststellen kann, ob ein Benutzer beim Zugriff auf eine Website ein Mobiltelefon oder einen PC verwendet, zu einem der Probleme geworden, mit denen sich Entwickler auseinandersetzen müssen. In diesem Artikel werden einige gängige PHP-Codes vorgestellt, mit denen Entwickler feststellen können, ob es sich beim Client, der die Website öffnet, um ein Mobiltelefon oder einen PC handelt.
1. Bestimmen Sie das Zugriffsterminal über HTTP_USER_AGENT
HTTP_USER_AGENT ist eine Header-Information im HTTP-Protokoll. Der Anforderungsheader enthält viele Geräteidentifikationsinformationen, die verwendet werden können der Gerätetyp des Zugangsterminals. Durch die Analyse des HTTP_USER_AGENT im Benutzeranforderungsheader können der Browser, das Betriebssystem, das mobile Gerät und andere vom Benutzer verwendete Informationen abgerufen werden, zu denen auch die Identifikationsinformationen des mobilen Geräts oder PC-Geräts gehören.
Die spezifische Implementierung lautet wie folgt:
function is_mobile(){ if (isset($_SERVER['HTTP_USER_AGENT'])) { $user_agent = $_SERVER['HTTP_USER_AGENT']; $mobile_agents = Array("Android", "iPhone", "iPod", "iPad", "Windows Phone", "BlackBerry", "SymbianOS"); foreach ($mobile_agents as $mobile_agent) { if (strpos($user_agent, $mobile_agent) !== false) { return true; } } } return false; }
Durchlaufen Sie das Array $mobile_agents, und Sie können anhand der Frage, ob HTTP_USER_AGENT das Mobiltelefon enthält, feststellen, ob das Zugriffsterminal ein mobiles Gerät ist Gerätekennung. Wenn „true“ zurückgegeben wird, bedeutet dies, dass der Benutzer ein mobiles Gerät verwendet hat, andernfalls bedeutet dies, dass der Benutzer ein PC-Gerät verwendet hat.
2. Bestimmen Sie das Zugriffsterminal über die vermutete Originalmethode von $_SERVER
Zusätzlich zu den Header-Informationen HTTP_USER_AGENT gibt es eine weitere Beurteilungsmethode, nämlich über die vermutete Methode Ursprüngliche Methode des HTTP_ACCEPT-Werts von $_SERVER zur Bestimmung des Zugriffsterminaltyps. Der HTTP_ACCEPT-Wert stellt den Seitentyp dar, den der Browser des Benutzers akzeptieren kann. Normalerweise akzeptiert der Browser standardmäßig Daten vom Typ Text/HTML, während mobile Geräte Datenformate vom Typ Text/HTML oder WAP anfordern.
Der spezifische Implementierungscode lautet wie folgt:
function is_mobile(){ if (isset($_SERVER['HTTP_ACCEPT'])) { $accept = $_SERVER['HTTP_ACCEPT']; if (strpos($accept, 'vnd.wap.xhtml+xml') !== false || strpos($accept, 'text/vnd.wap.wml') !== false) { return true; } } return false; }
Wenn true zurückgegeben wird, bedeutet dies, dass der Benutzer ein mobiles Gerät für den Zugriff verwendet hat, andernfalls bedeutet dies, dass der Benutzer ein verwendet hat PC-Gerät für den Zugriff.
3. Zugriff auf bestimmte URL-Pfade über mobile Geräte
Wenn ein mobiles Gerät auf die Website zugreift, springt es standardmäßig automatisch zur mobilen Version der Webseite Wenn ein Desktop-Gerät auf die Website zugreift, wird zur Desktop-Version der Webseite gesprungen. Entwickler können Anfragen von verschiedenen Geräten basierend auf unterschiedlichen URL-Pfaden verarbeiten.
Das Hinzufügen der Zeichenfolge „/m/“ zur URL bedeutet beispielsweise, dass es sich bei der aufgerufenen Seite um eine mobile Website handelt. Nach der Anpassung des Inhalts kann diese weiterhin gerendert werden. Wenn die Zugriffs-URL nicht die Zeichenfolge „/m/“ enthält, bedeutet dies, dass Sie auf die PC-Seite zugreifen.
Der spezifische Implementierungscode lautet wie folgt:
function is_mobile(){ if(isset($_SERVER['HTTP_REFERER'])){ $referer = strtolower($_SERVER['HTTP_REFERER']); $mobile_url = strtolower($_SERVER['HTTP_HOST'].'/m/'); if(strpos($referer, $mobile_url) !== false){ return true; } } return false; }
Durch Überprüfen des Werts von $_SERVER['HTTP_REFERER'] können Sie den Seitenlink abrufen, über den der Benutzer die Seite eingegeben hat aktuelle Seite und ermittelt so die Nutzung des Benutzers. Handelt es sich um ein mobiles Gerät oder ein PC-Gerät.
Zusammenfassung
Die oben genannten drei Methoden können verwendet werden, um den Typ des Benutzerendgeräts zu bestimmen. Welche Methode zu wählen ist, hängt hauptsächlich von der tatsächlichen Situation der Anwendung ab. In praktischen Anwendungen können wir diese Methoden auf verschiedene Szenarien anwenden, um den Benutzern ein benutzerfreundlicheres Erlebnis zu bieten. Wenn ein Entwickler eine Webanwendung entwickeln möchte, die sowohl für mobile Geräte als auch für PCs geeignet ist, kann dies mit der oben genannten Methode problemlos umgesetzt werden.
Das obige ist der detaillierte Inhalt vonWie stellt PHP fest, ob es auf einem Mobiltelefon oder einem PC geöffnet wird?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!