Rumah >pembangunan bahagian belakang >masalah PHP >Cara menggunakan php untuk menentukan sama ada peranti itu Android atau iOS
Dalam pembangunan web, adalah penting untuk menyesuaikan halaman web mengikut sistem pengendalian yang digunakan oleh pengguna. PHP boleh mengenal pasti sistem pengendalian skrip berjalan dan pelayar yang digunakan pengguna. Artikel ini akan memperkenalkan cara mengenal pasti sistem pengendalian yang digunakan oleh pengguna dalam PHP dan cara membezakan antara Android dan iOS.
Dua kaedah berikut diberikan:
Kaedah 1: Gunakan pembolehubah HTTP_USER_AGENT
HTTP_USER_AGENT ialah pengepala permintaan yang dihantar oleh penyemak imbas ke pelayan web, yang mengandungi pengguna rentetan watak ejen. Rentetan ini biasanya mengandungi nama penyemak imbas, versi penyemak imbas, nama sistem pengendalian dan versi sistem pengendalian. Dalam PHP, anda boleh menggunakan kod berikut untuk mendapatkan nilai pembolehubah ini:
$user_agent = $_SERVER['HTTP_USER_AGENT'];
Selepas mendapat nilai, kami biasanya mencari watak ejen pengguna Maklumat yang terkandung dalam rentetan. Untuk menentukan sistem pengendalian pengguna, berikut ialah beberapa rentetan ejen pengguna biasa:
Windows
Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, seperti Gecko) Chrome/ 58.0 .3029.96 Safari/537.36
macOS
Mozilla/5.0 (Macintosh; Intel Mac OS /5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, seperti Gecko.2.2 Chrome) Safari/537.36
iOS
Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 seperti Mac OS dan versinya, berikut ialah contoh kod:
$user_agent = $_SERVER['HTTP_USER_AGENT'] ;
jika (preg_match('/iphone|ipod|ipad/i', $user_agent) ) {
} lain jika (preg_match('/android/i', $ user_agent)) {// iOS if(preg_match('/OS\s(\d+)_(\d+)/i', $user_agent, $matches)) { $os_version = $matches[1] . '.' . $matches[2]; } echo 'iOS ' . $os_version;} else if (preg_match('/windows nt/i ', $user_agent)) {
// Android if(preg_match('/Android\s(\d+(\.\d+)?)/i', $user_agent, $matches)) { $os_version = $matches[1]; } echo 'Android ' . $os_version;} else {
// Windows if(preg_match('/Windows NT (\d+(\.\d+)?)/i', $user_agent, $matches)) { $os_version = $matches[1]; } echo 'Windows ' . $os_version;}Kaedah 2: Gunakan fungsi get_browser PHP
echo 'Unknown OS';
get_browser Fungsi boleh mengembalikan maklumat tentang penyemak imbas dan sistem pengendalian yang digunakan oleh pengguna. Walau bagaimanapun, fungsi ini bergantung pada fail browscap.ini yang dipasang oleh PHP dan data yang sepadan dengan maklumat ejen pengguna yang ditentukan.
Berikut ialah contoh kod:
$browser_info = get_browser(null, true);
$os = $browser_info['platform'];jika (preg_match ('/iphone|ipod|ipad/i', $_SERVER['HTTP_USER_AGENT'])) {echo 'iOS ' . $os;} lain {
echo 'Android ' . $os;}Perlu diambil perhatian bahawa fail browscap.ini PHP perlu dimuat turun secara berasingan, dan pautan muat turunnya Untuk https://browscap.org/stream?q=Full_PHP_BrowsCapINI
echo 'Unknown OS';
Kesimpulan
Kedua-dua kaedah boleh menentukan sistem pengendalian pengguna pada PHP, anda hanya perlu memilih yang anda seperti itu sahaja. Tidak kira kaedah yang anda pilih, ia boleh memenuhi keperluan sistem pengendalian pengguna dalam pembangunan web.
Atas ialah kandungan terperinci Cara menggunakan php untuk menentukan sama ada peranti itu Android atau iOS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!