2010-11-28 93 views
2

我想知道在PHP中如何检测我的Web应用程序在哪个浏览器上运行。检测浏览器当前的Web应用程序正在运行

例如

如果当前浏览器为chrome,则提示(“Chrome浏览器处理”),否则提示(“休息浏览器处理”);

echo $_SERVER['HTTP_USER_AGENT']; 

输出下面我越来越如果我执行上面的代码:

Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/532.0 (KHTML, like Gecko) Chrome/3.0.195.21 Safari/532.0 

请提出您的指针来检测浏览器的确切名称。

感谢,

-Pravin

+0

我不确定你打算在服务器端做什么。如果你只是用它来记录日志,或者收集统计数据或其他东西,那么一切都很好,但是(为了以防万一)我建议你避免尝试为不同的浏览器提供不同的内容。 – 2010-11-28 05:19:09

+0

我用PHP方法更新了我的答案。 – esqew 2010-11-28 05:23:52

回答

1

就个人而言,我会使用JavaScript来这一个。

if(navigator.userAgent.match(/Chrome/i)) { 
    alert("You're using Chrome!"); 
} 
else { 
    alert("You're using something other than Chrome!"); 
} 

...但如果你真的想,你可以做到在PHP同样的事情:

if (preg_match("/Chrome/i", $_SERVER['HTTP_USER_AGENT']) == 0) { 
    // zero matches 
    echo "<script>alert('You're not using Chrome!')</script>"; 
} else { 
    echo "<script>alert('You're using Chrome!')</script>"; 
} 
2

This有一些有用的代码。

基本上,你的情况,你可以找到字符串“铬”。一般情况下,它可能需要更多的逻辑,因为例如,字符串“Safari”可以在由Safari(包括Chrome)以外的其他浏览器提供的用户代理中找到。 PHP为此提供了“浏览器”元素。

相关问题