Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Kesan peranti mudah alih dengan PHP

Kesan peranti mudah alih dengan PHP

WBOY
WBOYke hadapan
2024-02-28 12:01:01352semak imbas

editor php Yuzai akan memperkenalkan kepada anda hari ini cara menggunakan PHP untuk mengesan peranti mudah alih. Dengan populariti peranti mudah alih, reka bentuk responsif tapak web telah menjadi sangat penting. Dengan mengesan jenis peranti yang digunakan oleh pengguna untuk mengakses tapak web melalui PHP, kami boleh menyediakan kandungan dan reka letak tersuai untuk peranti yang berbeza untuk meningkatkan pengalaman pengguna. Artikel ini akan memperkenalkan cara menggunakan PHP untuk mengesan jenis peranti pengguna dan menyediakan penyesuaian mudah alih yang lebih baik untuk tapak web anda.


Gunakan kelas mobiledetect dalam php untuk mengesan peranti mudah alih

mobiledetect 类检测移动设备

我们可以使用名为 Mobile Detect 的轻量级 PHP 类来检测 PHP 中的移动设备。它还可以检测平板设备。该库使用某些 Http 标头和用户代理字符串来检测移动设备。我们可以使用 Composer 使用以下命令下载库。

<code><code class="language-bash hljs" data-lang="bash"><span style="display:flex;"><span>composer require mobiledetect/mobiledetectlib
</span></span></code></code>

该库提供了各种方法,如 isMobile()isTablet()is<strong class="keylink">iOS</strong>() 来检测各种移动环境。我们可以创建 Mobile_Detect() 类的对象并使用这些方法。

例如,使用上面的 composer 命令下载项目目录中的库。接下来,使用 require_once 函数需要文件 autoload.php。该文件位于 vendor 目录中。接下来,创建 Mobile_Detect() 类的对象 $detect。然后,在 if 条件下使用函数 isMobile()。在 if 块中,显示消息检测到移动设备,并在 else 块中显示消息未检测到移动设备

下面的示例将检测网页是否是从移动设备访问的。下面的输出部分显示了从 PC 打开网页时的情况。我们可以通过在网页上单击鼠标右键找到响应式设计模式来检查元素。在那里,我们可以选择不同的移动设备并刷新脚本。当我们选择移动设备时,输出将更改为检测到移动设备。这样,我们就可以使用 Mobile Detect 类来检测 PHP 中的移动设备。

示例代码:

<code><code class="language-php hljs" data-lang="php"><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">require_once</span> <span style="color:#ba2121">"vendor/autoload.php"</span>;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#19177c">$detect</span> <span style="color:#666">=</span> <span style="color:#008000;font-weight:bold">new</span> Mobile_Detect;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">if</span> ( <span style="color:#19177c">$detect</span><span style="color:#666">-></span><span style="color:#7d9029">isMobile</span>() ) {
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">echo</span> <span style="color:#ba2121">"Mobile device detected"</span>;
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">else</span> {
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">echo</span> <span style="color:#ba2121">"Mobile device not detected"</span>;
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span><span style="color:#bc7a00">?></span><span >
</span></span></span></code></code>

输出:

<code><code class="language-text hljs" data-lang="text"><span style="display:flex;"><span>Mobile device not detected
</span></span></code></code>

在 PHP 中使用 HTTP_USER_AGENTpreg_match() 函数检测移动设备

我们可以使用字符串 HTTP_USER_AGENT 来获取有关用户浏览器访问网站的信息。我们将使用 $_SERVER 超全局变量和字符串作为数组元素。超全局变量包含有关网络服务器的信息。我们将创建在移动设备中找到的用户代理字符串的自定义集合。然后,我们可以使用 preg_match() 函数检查这些是否与当前用户正在浏览的浏览器匹配。随着支持的新移动设备的发布,可以手动添加用户代理字符串的集合。可在此处找到更新的用户代理字符串集合列表。

例如,创建一个变量 $user_agent 并在其中存储 $_SERVER["HTTP_USER_AGENT"]。然后使用 preg_match() 函数来匹配用户代理字符串。使用字符串集合作为第一个参数。使用 $user_agent 变量作为第二个参数。最后,使用 if-elseKami boleh menggunakan kelas PHP ringan bernama Mobile Detect untuk mengesan dalam PHP peranti mudah alih . Ia juga boleh mengesan peranti tablet. Pustaka ini menggunakan pengepala

Http

tertentu dan

rentetan ejen pengguna

untuk mengesan peranti mudah alih. Kami boleh memuat turun perpustakaan menggunakan Komposer menggunakan arahan berikut.

<code><code class="language-php hljs" data-lang="php"><span style="display:flex;"><span><span style="color:#19177c">$user_agent</span> <span style="color:#666">=</span> <span style="color:#19177c">$_SERVER</span>[<span style="color:#ba2121">"HTTP_USER_AGENT"</span>];
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">if</span>(preg_match(<span style="color:#ba2121">"/(<strong class="keylink">Android</strong>|<strong class="keylink">WEB</strong>os|avant<strong class="keylink">Go</strong>|iphone|ipod|ipad|bolt|boost|cricket|docomo|fone|hiptop|opera mini|mini|kitkat|mobi|palm|phone|pie|tablet|up\.browser|up\.link|webos|wos)/i"</span>,<span style="color:#19177c">$user_agent</span> ))
</span></span><span style="display:flex;"><span>{
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">echo</span> <span style="color:#ba2121">"mobile device detected"</span>;
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">else</span>{
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">echo</span> <span style="color:#ba2121">"mobile device not detected"</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></code>

Pustaka menyediakan pelbagai kaedah, seperti isMobile(), isTablet(), is

iOS🎜() untuk mengesan pelbagai a persekitaran mudah alih. Kita boleh mencipta objek kelas Mobile_Detect() dan menggunakan kaedah ini. 🎜🎜Sebagai contoh, gunakan arahan komposer di atas untuk memuat turun perpustakaan dalam direktori 🎜projek🎜. Seterusnya, fail autoload.php diperlukan menggunakan fungsi require_once. Fail ini terletak dalam direktori vendor. Seterusnya, buat objek kelas Mobile_Detect() $detect. Kemudian, gunakan fungsi isMobile() dalam keadaan if. Dalam blok if, paparkan mesej Peranti mudah alih dikesan dan dalam blok else, paparkan mesej Peranti mudah alih tidak dikesan kod>. 🎜🎜Contoh di bawah akan mengesan jika halaman web diakses daripada peranti mudah alih. Bahagian output di bawah menunjukkan perkara yang berlaku apabila halaman web dibuka daripada PC. Kami boleh memeriksa elemen dengan mencari Responsif 🎜Mod Reka Bentuk🎜 dengan mengklik kanan pada halaman web. Di sana kita boleh memilih peranti mudah alih yang berbeza dan memuat semula skrip. Apabila kami memilih peranti mudah alih, output akan bertukar kepada <kod>Peranti mudah alih dikesan</kod>. Dengan cara ini, kita boleh menggunakan kelas Mobile Detect untuk mengesan peranti mudah alih dalam PHP. 🎜🎜Contoh kod: 🎜
<code><code class="language-text hljs" data-lang="text"><span style="display:flex;"><span>Mobile device detected
</span></span></code></code>
🎜Output: 🎜rrreee🎜

Dalam PHP menggunakan HTTP_USER_AGENT dan fungsi preg_match() mengesan peranti mudah alih

🎜Kami boleh menggunakan rentetan HTTP_USER_AGENT untuk mendapatkan maklumat tentang tapak web yang dilawati oleh penyemak imbas pengguna. Kami akan menggunakan pembolehubah dan rentetan superglobal $_SERVER sebagai elemen 🎜array🎜. Pembolehubah superglobal mengandungi maklumat tentang 🎜rangkaian🎜🎜pelayan🎜. Kami akan membuat 🎜koleksi🎜 tersuai rentetan ejen pengguna yang terdapat pada peranti mudah alih. Kami kemudiannya boleh menggunakan fungsi preg_match() untuk menyemak sama ada ini sepadan dengan penyemak imbas yang sedang dilayari pengguna semasa. Apabila peranti mudah alih baharu yang disokong dikeluarkan, koleksi rentetan ejen pengguna boleh ditambah secara manual. Senarai kemas kini koleksi rentetan ejen pengguna boleh didapati di sini. 🎜🎜Sebagai contoh, buat $user_agent pembolehubah dan simpan $_SERVER["HTTP_USER_AGENT"] di dalamnya. Kemudian gunakan fungsi preg_match() untuk memadankan rentetan ejen pengguna. Gunakan koleksi rentetan sebagai hujah pertama. Gunakan pembolehubah $user_agent sebagai parameter kedua. Akhir sekali, gunakan syarat if-else untuk memaparkan mesej dengan sewajarnya. 🎜🎜Di sini, kami membuka halaman web daripada iPhone. Jadi rentetan ejen pengguna sepadan dengan set. Dengan cara ini, kami boleh mengesan peranti mudah alih dalam PHP. 🎜🎜Kod sampel: 🎜rrreee 🎜Output: 🎜rrreee

Atas ialah kandungan terperinci Kesan peranti mudah alih dengan PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:lsjlt.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam