simple browser detection code snippet
| From: | Markus Bertheau | Date: | Thu, 11 Oct 2001 15:22:21 +0000 |
| Subject: | simple browser detection code snippet | ||
| Groups: | php.general | ||
| Request: | Send a blank email to php-general+get-70817@lists.php.net to get a copy of this message | ||
Does anyone see a problem with this browser detection?
$agent = $HTTP_USER_AGENT; // Damit kein Text an der ersten Stelle
sein kann
$browser = "unknown";
if (strpos($agent, "Opera") === 0)
{
$browser = "Opera";
list($version, $dummy) = split(" ", $agent, 2);
list($dummy, $version) = split("/", $version, 2);
}
else
{
if (strpos($agent, "Mozilla") === 0)
{
if (strpos($agent, "Opera") !== false)
{
$browser = "Opera";
list($dummy, $version) = split("\)", $agent, 2);
list($dummy, $dummy, $version) = split(" ", $version);
}
else if (strpos($agent, "(compatible") !== false)
{
// Konq, MSIE
if (strpos($agent, "Konqueror") !== false)
{
$browser = "Konqueror";
list($dummy, $version) = split("Konqueror/", $agent, 2);
list($version, $dummy) = split(";", $version, 2);
}
else if (strpos($agent, "MSIE") !== false)
{
$browser = "Internet Explorer";
list($dummy, $version) = split("MSIE", $agent, 2);
list($version, $dummy) = split(";", $version, 2);
}
}
else
{
if (strpos($agent, "Netscape6") !== false)
{
$browser = "Netscape 6";
list($dummy, $version) = split("Netscape6/", $agent, 2);
}
else if (strpos($agent, "Gecko") !== false)
{
$browser = "Mozilla";
list($dummy, $version) = split("rv:", $agent, 2);
list($version, $dummy) = split("\)", $version, 2);
}
else
{
$browser = "Netscape";
list($version, $dummy) = split(" ", $agent, 2);
list($dummy, $version) = split("/", $version, 2);
}
}
}
}
$version = trim($version);
Markus Bertheau