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;
// Android if(preg_match('/Android\s(\d+(\.\d+)?)/i', $user_agent, $matches)) { $os_version = $matches[1]; } echo 'Android ' . $os_version;
// Windows if(preg_match('/Windows NT (\d+(\.\d+)?)/i', $user_agent, $matches)) { $os_version = $matches[1]; } echo 'Windows ' . $os_version;
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;
echo 'Android ' . $os;
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!