Maison > développement back-end > Problème PHP > Comment déterminer le saut entre ordinateur et terminaux mobiles en php

Comment déterminer le saut entre ordinateur et terminaux mobiles en php

PHPz
Libérer: 2023-04-12 15:40:56
original
1155 Les gens l'ont consulté

Avec la popularité des smartphones, de plus en plus de sites Web commencent à se concentrer sur l'adaptation mobile. De nombreux sites Web doivent déterminer si l'utilisateur l'ouvre sur un ordinateur ou un terminal mobile afin de réagir en conséquence. Cet article présentera les méthodes de jugement et de saut sur ordinateur et terminal mobile écrites en PHP.

Tout d'abord, nous devons comprendre quelques connaissances de base. Actuellement, le jugement quant à savoir si l'utilisateur est sur un ordinateur ou un terminal mobile repose souvent sur les en-têtes de requête HTTP. Lorsque nous ouvrons un navigateur sur un ordinateur pour visiter un site Web, il inclura les informations « User-Agent » dans l'en-tête de la requête HTTP, et lorsque nous ouvrons un navigateur sur un téléphone mobile pour visiter un site Web, l'en-tête de la demande inclura « Utilisateur -Agent" "Les informations sont différentes. Par conséquent, nous pouvons déterminer si l'utilisateur l'ouvre sur l'ordinateur ou sur le terminal mobile en jugeant si les informations « User-Agent » dans l'en-tête de la requête contiennent le mot-clé de l'appareil mobile.

Ensuite, voyons comment déterminer le type de périphérique utilisateur en PHP. Il existe une fonction intégrée en PHP appelée getallheaders() qui peut obtenir toutes les informations contenues dans l'en-tête de la requête, et nous pouvons en obtenir la valeur de User-Agent. . Le code est le suivant : getallheaders()可以获取到请求头中所有的信息,我们可以从中获取到User-Agent的值。代码如下:

$headers = getallheaders(); 
$userAgent = $headers['User-Agent'];
Copier après la connexion

"User-Agent"信息包含了许多关键字,可以通过这些关键字来判断用户设备类型。例如,在"User-Agent"中包含"Android"、"iPhone"、"iPad"等表示移动设备的关键字。我们可以通过正则表达式来判断$userAgent

if(preg_match('/iPhone|iPad|iPod|Android/i', $userAgent)){ 
    // 是移动设备
}else{ 
    // 不是移动设备
}
Copier après la connexion
Les informations "User-Agent" contiennent de nombreux mots-clés grâce auxquels le type de périphérique utilisateur peut être déterminé. Par exemple, « User-Agent » contient des mots-clés indiquant des appareils mobiles tels que « Android », « iPhone » et « iPad ». Nous pouvons utiliser des expressions régulières pour déterminer si $userAgent est un appareil mobile. Le code est le suivant :

if(preg_match('/iPhone|iPad|iPod|Android/i', $userAgent)){
    header("Location: http://m.example.com"); // 跳转到移动端网站
    exit();  // 确保接下来的代码不再执行
}else{
    header("Location: http://www.example.com"); // 跳转到PC端网站
    exit();
}
Copier après la connexion
Une fois le type d'appareil déterminé, nous devons ensuite passer au type d'appareil. Ici, nous prenons le saut vers différentes pages comme exemple pour illustrer. Le code est le suivant :

rrreee

Bien sûr, si nous ne voulons pas accéder directement à la page, nous pouvons également contrôler l'affichage des différents appareils d'une autre manière.

Ce qui précède explique comment utiliser PHP pour déterminer le type d'ordinateur et d'appareils mobiles. J'espère que cela sera utile aux lecteurs. Pour une meilleure expérience utilisateur, nous devons prendre en compte les problèmes d'adaptation mobile lors de la conception du site Web et améliorer la compatibilité et la facilité d'utilisation de la page. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal