| 
 | 
 
 
由於作業系統及瀏覽器的不同,用戶端經常會出現不同的流覽結果,有些時候網站的效果也不能呈現,因此,必須透過辨識作業系統及瀏覽器來校定。 
 
首先,先使用$_SERVER["HTTP_USER_AGENT"];碼來取得用戶端的作業系統及瀏覽器。 
然後定義各種作業系統與瀏覽器。 
 
第一段語法就是取得並定義作業系統及瀏覽器: 
 
 
 
- <?
 
 - $ua = $_SERVER["HTTP_USER_AGENT"]; 
 
 - /* ==== Detect the OS ==== */ 
 
 - // ---- Mobile ---- 
 
  
- // Android 
 
  
- $android = strpos($ua, 'Android') ? true : false; 
 
 - // BlackBerry 
 
 - $blackberry = strpos($ua, 'BlackBerry') ? true : false; 
 
 - // iPhone 
 
 - $iphone = strpos($ua, 'iPhone') ? true : false; 
 
 - // Palm 
 
 - $palm = strpos($ua, 'Palm') ? true : false; 
 
  
- // ---- Desktop ---- 
 
  
- // Linux 
 
 - $linux = strpos($ua, 'Linux') ? true : false; 
 
  
- // Macintosh 
 
 - $mac = strpos($ua, 'Macintosh') ? true : false; 
 
  
- // Windows 
 
 - $win = strpos($ua, 'Windows') ? true : false; 
 
  
- /* ============================ */ 
 
  
 
- /* ==== Detect the UA ==== */ 
 
  
- // Chrome 
 
 - $chrome = strpos($ua, 'Chrome') ? true : false; // Google Chrome 
 
  
- // Firefox 
 
 - $firefox = strpos($ua, 'Firefox') ? true : false; // All Firefox 
 
 - $firefox_2 = strpos($ua, 'Firefox/2.0') ? true : false; // Firefox 2 
 
 - $firefox_3 = strpos($ua, 'Firefox/3.0') ? true : false; // Firefox 3 
 
 - $firefox_3_6 = strpos($ua, 'Firefox/3.6') ? true : false; // Firefox 3.6 
 
  
- // Internet Exlporer 
 
 - $msie = strpos($ua, 'MSIE') ? true : false; // All Internet Explorer 
 
 - $msie_7 = strpos($ua, 'MSIE 7.0') ? true : false; // Internet Explorer 7 
 
 - $msie_8 = strpos($ua, 'MSIE 8.0') ? true : false; // Internet Explorer 8 
 
  
- // Opera 
 
 - $opera = preg_match("/bOperab/i", $ua); // All Opera 
 
  
 
- // Safari 
 
 - $safari = strpos($ua, 'Safari') ? true : false; // All Safari 
 
 - $safari_2 = strpos($ua, 'Safari/419') ? true : false; // Safari 2 
 
 - $safari_3 = strpos($ua, 'Safari/525') ? true : false; // Safari 3 
 
 - $safari_3_1 = strpos($ua, 'Safari/528') ? true : false; // Safari 3.1 
 
 - $safari_4 = strpos($ua, 'Safari/531') ? true : false; // Safari 4 
 
  
- /* ============================ */ 
 
  
- ?>
 
  複製代碼 
 
 
 
 
 
 
如加上這一段語法可以測試瀏覽器與作業系統(Tests for browsers and operating systems) 
 
 
 
 
 
 
 
 
 
這一段簡單的語法可以將手機用戶導入手機版(Mobile Redirect to GOOGLE) 
 
 
 
- <?
 
 - $ua = $_SERVER["HTTP_USER_AGENT"]; 
 
 - $android = strpos($ua, 'Android') ? true : false; 
 
 - $blackberry = strpos($ua, 'BlackBerry') ? true : false; 
 
 - $iphone = strpos($ua, 'iPhone') ? true : false; 
 
 - $palm = strpos($ua, 'Palm') ? true : false; 
 
 - if ($android || $blackberry || $iphone || $palm) { 
 
 - // 301 redirection 
 
 - header("HTTP/1.1 301 Moved Permanently"); 
 
 - header("Location: http://m.google.com"); 
 
 - exit(); 
 
 - } 
 
 - ?>
 
  複製代碼 
 
 
 
 
 
這一段語法可以位個別瀏覽器制定CSS Give IE7 different CSS with HTML explanation 
 
 
 
- <?
 
  
- $ua = $_SERVER["HTTP_USER_AGENT"]; 
 
 - $msie_7 = strpos($ua, 'MSIE 7.0') ? true : false; 
 
  
- if ($msie_7) { 
 
 - echo ' 
 
  
- ie7class 
 
  
- '; 
 
 - } 
 
 - ?>
 
  複製代碼 
 
 
 
 
 
這一段語法可以補充IE所欠缺的功能 
 
 
- <?
 
  
- if ($msie_7) { 
 
 - echo " 
 
  
- oh yah, MSIE7 can't understand inline-block... The MSIE6 & 7 Fix? 
 
  
- <style type="text/css" media="screen" title="IE7 CSS"> 
 
 - .inline-block {display:inline;zoom:1;} 
 
 - </style> 
 
  
- "; 
 
 - } 
 
 - ?>
 
  複製代碼 
 
 
 
 
  
 |   
 
 
 
 |