それで正確だと思いますよ。Google ChromeのユーザーエージェントにはSafariの文字列も入っています。
PHPマニュアルのget_browser()を見ると詳しく載っていますので、ご覧ください。
http://php.net/manual/ja/function.get-browser.php
マニュアルに載っている下記のようコードでブラウザ名とバージョンを取得できますよ!
lang
1<?php
2function Browser() {
3 $u_agent = $_SERVER['HTTP_USER_AGENT'];
4 $bname = 'Unknown';
5 $version= "";
6 if(preg_match('/MSIE/i',$u_agent) && !preg_match('/Opera/i',$u_agent)) {
7 $bname = 'Internet Explorer';
8 $ub = "MSIE";
9 }
10 elseif(preg_match('/Firefox/i',$u_agent)) {
11 $bname = 'Mozilla Firefox';
12 $ub = "Firefox";
13 }
14 elseif(preg_match('/Chrome/i',$u_agent)) {
15 $bname = 'Google Chrome';
16 $ub = "Chrome";
17 }
18 elseif(preg_match('/Safari/i',$u_agent)) {
19 $bname = 'Apple Safari';
20 $ub = "Safari";
21 }
22 elseif(preg_match('/Opera/i',$u_agent)) {
23 $bname = 'Opera';
24 $ub = "Opera";
25 }
26 elseif(preg_match('/Netscape/i',$u_agent)) {
27 $bname = 'Netscape';
28 $ub = "Netscape";
29 }
30
31 $known = array('Version', $ub, 'other');
32 $pattern = '#(?<browser>' . join('|', $known) .
33 ')[/ ]+(?<version>[0-9.|a-zA-Z.]*)#';
34 preg_match_all($pattern, $u_agent, $matches);
35
36 // see how many we have
37 $i = count($matches['browser']);
38 if ($i != 1) {
39 if (strripos($u_agent,"Version") < strripos($u_agent,$ub)){
40 $version= $matches['version'][0];
41 }
42 else {
43 $version= $matches['version'][1];
44 }
45 }
46 else {
47 $version= $matches['version'][0];
48 }
49 if ($version==null || $version=="") {$version="?";}
50 return array(
51 'name' => $bname,
52 'version' => $version,
53 );
54 }
55
56var_dump(Browser());
57?>"
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。