我正在使用这个JS代码来了解用户使用的浏览器.
<script>
document.write(navigator.appName);
</script>
Run Code Online (Sandbox Code Playgroud)
我想让这个navigator.appName到php代码使用它像这样:
if ($appName == "Internet Explorer") {
// blabla
}
Run Code Online (Sandbox Code Playgroud)
我该怎么做?
我正在使用该get_browser()功能试图警告人们他们的浏览器不支持Javascript.实际上我正在用它来告诉他们他们可以使用我正在构建的Web应用程序的某些部分.我已经决定正确使用Javascript,因为我已经厌倦了听害怕使用它的开发人员而且我已经看到了该语言的一些巨大潜力.我离题了,这是错误.
没有设置browscap ini指令
现在我想象这意味着我需要把它设置为php.ini.有人可以给我一些方向吗?
我一直在寻找一种可靠的方式(至少不那么模糊):
我想根据这些信息显示自定义内容,例如:
如果用户想知道如何清除浏览器上的cookie.假设我有很多内容已经可用于许多浏览器.版本我想自动加载适当的内容
有没有办法不涉及Javascript来获取这些值?
我有用例没有找到或不准确的浏览器.所以我想拥有最可靠的解决方案.
这里有2个网站完全符合我的需要:
部分解决方案的其他链接:
花了很多天尝试,搜索,但没有成功.我从Stackoverflow社区发现了许多提示:
其他有用的链接:
编辑1 到目前为止,我已经测试了答案和评论.这些解决方案非常令人满意:
WURFL不是最近但非常好.(感谢@Ian Roberts)
编辑2 PHP移动检测使用WURFL
UPDATE
确保您收到的标题未被任何其他库修改.
例如,某些安全库(如OWASP PhpSec [ABANDONED])将标头结构更改为自定义对象, PHP移动检测无法访问所需的所有信息
对于那些使用OWASP PhpSec [ABANDONED]的人来说,http库正在修改全局头对象结构.(2013年12月)因此,如果您遇到问题,请在使用http库包含任何OWASP PhpSec类之前使用PHP移动检测
我正在尝试使用get_browser(),不幸的是我的页面在共享主机上,我无法访问php.ini.
我已经下载了最新版本的browscap.ini并将其放在我的文档根目录中.我已经添加了以下内容: -
if(!ini_set('browscap','/ home/private stuff /browscap.ini')){echo
"无法设置browscap";
} else {
echo"browscap = [".ini_get('browscap')."]";
}
exit();
但这失败了,(nb:失败条件的echo语句总是显示[] - 即使我没有;但是有browscap.ini文件,设置应该仍然出现在ini_get ....不应该吗?)
我已经看过以前的问题了,他们似乎没有任何帮助,任何想法?
我搜索过这个,我发现的一切都超出了我的需要.我以前在JavaScript中做过这个,但我更喜欢使用PHP.我将如何向访问者显示消息,具体取决于他们使用的浏览器?
例:
IE用户会看到:"你正在使用Internet Explorer"
Firefox用户会看到:"你正在使用Mozilla Firefox"
除了IE,Firefox,Chrome,Safari和Opera之外,我还不确定是否还有其他主流浏览器.但我至少希望单独向每个浏览器发送一条消息.谢谢.