/** * 獲取客戶端瀏覽器類型 * @param string $glue 瀏覽器類型和版本號之間的鏈接符 * @return string|array 傳遞鏈接符則鏈接瀏覽器類型和版本號返回字符串不然直接返回數組 false爲未知瀏覽器類型 */ function get_client_browser($glue = null) { $browser = array(); $agent = $_SERVER['HTTP_USER_AGENT']; //獲取客戶端信息 /* 定義瀏覽器特性正則表達式 */ $regex = array( 'ie' => '/(MSIE) (\d+\.\d)/', 'chrome' => '/(Chrome)\/(\d+\.\d+)/', 'firefox' => '/(Firefox)\/(\d+\.\d+)/', 'opera' => '/(Opera)\/(\d+\.\d+)/', 'safari' => '/Version\/(\d+\.\d+\.\d) (Safari)/', ); foreach($regex as $type => $reg) { preg_match($reg, $agent, $data); if(!empty($data) && is_array($data)){ $browser = $type === 'safari' ? array($data[2], $data[1]) : array($data[1], $data[2]); break; } } return empty($browser) ? false : (is_null($glue) ? $browser : implode($glue, $browser)); }