我想從用戶代理字符串中提取完整的操作系統名稱和瀏覽器。我怎樣才能做到這一點?用戶代理,從字符串中提取操作系統和瀏覽器
4
A
回答
6
我認爲獲取完整的操作系統名稱和完整的瀏覽器名稱是很棘手的,因爲許多瀏覽器都以不同的方式標識自己。你可能需要一些奇特的正則表達式,然後它可能不會100%的時間工作。
以下是我用來識別瀏覽器的簡單方法。您可能可以根據自己的需要進行調整。
+0
感謝分享:) – 2012-03-13 23:39:30
2
@augustknight:請注意,在IE11 doesn't發送「MSIE」的道理,我建議比賽添加到三叉戟標誌。
IE 11的用戶代理樣本:
Mozilla/5.0 (Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko
變化代碼:
<?php
public static function getUserAgent()
{
static $agent = null;
if (empty($agent)) {
$agent = $_SERVER['HTTP_USER_AGENT'];
if (stripos($agent, 'Firefox') !== false) {
$agent = 'firefox';
} elseif (stripos($agent, 'MSIE') !== false) {
$agent = 'ie';
} elseif (stripos($agent, 'Trident') !== false) {
$agent = 'ie';
} elseif (stripos($agent, 'iPad') !== false) {
$agent = 'ipad';
} elseif (stripos($agent, 'Android') !== false) {
$agent = 'android';
} elseif (stripos($agent, 'Chrome') !== false) {
$agent = 'chrome';
} elseif (stripos($agent, 'Safari') !== false) {
$agent = 'safari';
} elseif (stripos($agent, 'AIR') !== false) {
$agent = 'air';
} elseif (stripos($agent, 'Fluid') !== false) {
$agent = 'fluid';
}
}
return $agent;
}
>
1
還有PHP中的內置功能來實現這一點,更多:get_browser()
。
$agent = get_browser();
echo $agent->platform;
echo $agent->parent; // or $agent->browser . $agent->version
相關問題
- 1. Shell腳本(AIX):從用戶代理字符串中提取操作系統和瀏覽器信息
- 2. 從瀏覽器代理字符串中檢測設備或操作系統
- 3. 最終用戶瀏覽器和操作系統配置
- 4. 使用用戶代理字符串檢測用戶瀏覽器
- 5. 獲取客戶操作系統/瀏覽器的詳細信息
- 6. 從用戶代理字符串確定什麼瀏覽器提出請求
- 7. 從用戶代理中提取瀏覽器元素
- 8. 從字符串中提取操作數和操作符
- 9. 從IE瀏覽器使用javascript讀取新的用戶代理字符串
- 10. 獲取用戶信息,如用戶操作系統,瀏覽器,IP地址等
- 11. 安全字體的所有瀏覽器和操作系統
- 12. 用戶瀏覽器,操作系統,閃存等信息
- 13. 使用公式,從變量字符串中提取操作系統版本號
- 14. 瀏覽器「幫助應用程序」跨瀏覽器和操作系統
- 15. 添加到瀏覽器的用戶代理字符串?
- 16. 帶有JSUA的瀏覽器用戶代理字符串
- 17. 獲取客戶瀏覽器和操作系統信息所需的服務
- 18. Python - 從當前瀏覽器操作和讀取瀏覽器
- 19. 在PHP中檢索瀏覽器和操作系統
- 20. 瀏覽器和操作系統作爲主體類
- 21. 獲取用戶瀏覽器,操作系統,閃存版本,JavaScript信息
- 22. 用戶代理字符串不被讀取或通過Safari瀏覽器IOS
- 23. 硒代理操作系統
- 24. 檢測設備,操作系統和瀏覽器用戶代理的版本不太好嗎?
- 25. 使用navigator.platform在瀏覽器中檢測操作系統
- 26. Windows操作系統在瀏覽器中顯示未知字符垂直矩形
- 27. 瀏覽器/操作系統支持字體
- 28. TCL字符串操作和提取
- 29. 從Chrome瀏覽器訪問操作系統服務JS
- 30. 如何從Javascript檢測瀏覽器操作系統?
我建議在尋找的東西像https://github.com/dmolsen/ua-parser-php實現這一 – 2012-03-13 23:26:34
感謝,虐待檢查出來:) – 2012-03-13 23:39:12