我想用:
public function BrowserCheck() {
static $Browser;
if(!isset($Browser)){
$Browser = get_browser($_SERVER['HTTP_USER_AGENT'],true);
}
return $Browser;
}
在http://de3.php.net/manual/de/function.get-browser.php上建议,但不知何故var_dump($ Result);只会输出奇怪的值:
array(30) {
["browser_name_regex"]=>
string(6) "§^.*$§"
["browser_name_pattern"]=>
string(1) "*"
["browser"]=>
string(15) "Default Browser"
["version"]=>
string(1) "0"
["majorver"]=>
string(1) "0"
["minorver"]=>
string(1) "0"
["platform"]=>
string(7) "unknown"
["alpha"]=>
string(0) ""
["beta"]=>
string(0) ""
["win16"]=>
string(0) ""
["win32"]=>
string(0) ""
["win64"]=>
string(0) ""
["frames"]=>
string(1) "1"
["iframes"]=>
string(0) ""
["tables"]=>
string(1) "1"
["cookies"]=>
string(0) ""
["backgroundsounds"]=>
string(0) ""
["cdf"]=>
string(0) ""
["vbscript"]=>
string(0) ""
["javaapplets"]=>
string(0) ""
["javascript"]=>
string(0) ""
["activexcontrols"]=>
string(0) ""
["isbanned"]=>
string(0) ""
["ismobiledevice"]=>
string(0) ""
["issyndicationreader"]=>
string(0) ""
["crawler"]=>
string(0) ""
["cssversion"]=>
string(1) "0"
["supportscss"]=>
string(0) ""
["aol"]=>
string(0) ""
["aolversion"]=>
string(1) "0"
}
为什么呢?我正在使用Chrome,它只给了我一些“§^。* $§”作为找到的名字?这不可能是真的......这里有什么问题?
答案 0 :(得分:0)
此函数使用browscap.ini文件中的信息。这可能不是最佳解决方案,因为文件无法始终保持最新状态。尝试仅获取用户代理并通过正则表达式确定名称。
答案 1 :(得分:0)
你忘了:http://tempdownloads.browserscap.com/ - 下载PHP版本!并从php_browscap.ini重命名为browscap.ini
答案 2 :(得分:0)
public function BrowserCheck() {
static $Browser;
if(!isset($Browser)){
$Browser = $browser = get_browser(null, true);
}
return $Browser;
}
请勿使用$_SERVER['HTTP_USER_AGENT']
。 get_browser函数默认返回浏览器的信息。
试试上面的代码。
答案 3 :(得分:0)
public function BrowserCheck() {
static $Browser;
if(!isset($Browser)){
//You can bypass $_SERVER['HTTP_USER_AGENT'] parameter with a NULL value.
//you will get right result.
$Browser = $browser = get_browser(null, true);
}
return $Browser;
}
Try this code.
答案 4 :(得分:0)
检查你的php.ini中是否启用了browscap,如果没有启用它并重启appache
[browscap]
; http://php.net/browscap
browscap = "C:\xampp\php\extras\browscap.ini"
如果它已经存在,请检查位置中是否存在“browscap.ini”,如果它不存在
下载,并添加到路径
答案 5 :(得分:0)
我遇到了类似的问题,如果您在Windows上使用Xampp或Wamp服务器,那么这就是解决方案。
full_php_browser.ini
(38 MB)
browscap.ini
并将其放入C:\xampp\php\extras\
。打开php.ini
并添加 -
[browscap]
;http://php.net/browscap
browscap = "C:\xampp\php\extras\browscap.ini"
它肯定会奏效。