Scripts — Full Featured PHP Browser Detection & OS Detection
Our PHP browser detection scripts are all tested on every browser we have access to: Opera, Mozilla (and other Gecko engine browsers), Firefox/Iceweasel, Netscape, to MSIE, Galeon, K-Meleon, Lynx, Safari/Chrome (and other WebKit engine browsers), KHTML / Konqueror, and Mac IE browsers like IE 5.1 and 5.2. The full version also detects most spiders, and an assortment of uncommon browsers and other user agents. They are being used in one form or another on our sites.
If you don't need the complex browser detection script, you can get two simpler versions here.
If you need to test your code or site, use Chris Pederick's Firefox User-Agent Switcher Extension along with our import User-Agent List (download xml file).
Current features: Firefox/Mozilla, IE, Safari (and other AppleWebKit browsers, Chrome, Epiphany), Konqueror, and Opera browser version detection on our full featured PHP browser/os detection script, as well as OS version detection, OSX, Linux/Unix, including release/distro name. Mobile detection updated and is now fairly useful.
Script Download
Download: complex, full featured PHP Browser Detection
Current Version: 5.3.14
File Last Modified: April 20, 2010. 19:15:48 pm
Your Computer Box
Download: 'Your Computer' Box Script
Current Version: 1.2.4
File Last Modified: April 03, 2010. 16:53:22 pm
PHP Language Detection
Your Computer
Operating System:
Current Browser / UA:
System Language
JavaScript
PHP Browser Detection
Most Recent Script Updates
Also view the full update history page if you want to check how it has changed.
Version 5.3.14
Firefox Minefield moz type added
Added support to test for alpha Firefox releases, using Minefield, not Firefox string. This can be useful for testing Linux Firefox 64 bit support.
Version 5.3.13
New return value: ie9x
Because MSIE 9 is finally supporting real web standards, it seemed reasonable to add: ie9x as a new return value for ie_version.
Keep in mind however that if the user has MSIE 9 in compatibility mode, ie_version will be ie7x, not 9x for MSIE 9.
Version 5.3.12
MSIE 9 standard/compat modes
Handles new MSIE 9 user agent syntax:
standard: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)
compat mode: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Trident/5.0)
Note that MSIE 9 syntax has changed: standard, Mozilla/5.0, not 4.0, and Trident/5.0, not 4.0. But I'm glad that Microsoft finally is supporting real web standards, that's a welcome change.
These user agent types were also added to the import User-Agent List v. 2.1.5 (download xml file) for your testing convenience.
About the Browser Detection Scripts
All our php browser detection scripts have been thoroughly tested, although of course no script is ever perfect, so they will be modified as time goes by. There is a 'last modified by' date scripted in next to each download so you can see if it has changed from the version you have. Please post any problems with the detection script in our web programming forum. If you do find something wrong with a script, we'll get it fixed and post an updated version as soon as we can get to it.
The full featured PHP browser detection script also include a OS detection. It currently identifies most Windows, Mac OS X, Linux, Unix, and a variety of others. Also allows you to test for all the major search engine spiders, site downloaders, and http libraries.
Please Link to our Site
It would really help us out, and help other people find this information, if you could add a link to our site in exchange for these scripts. Thanks.
<a href="http://techpatterns.com/downloads/php_browser_detection.php"> PHP Browser Detection</a>
About the Full Featured Browser Detection PHP Script
Configuration information
Download the text file of the browser detection script and run either as an include or insert directly into your PHP code. This is the more complex version of our PHP browser detection script. Due to the size of the script, we recommend optimizing the use of the browser detector. You can find one way to optimize the running of the script here in our tech forums.
This script uses arrays to hold both browser and OS versions. It checks these against the navigatorUserAgent() strings, then packs either os or browser variables with the proper browser and os information. It also features several different test return conditions which should cover most situations you run across.
The main advantages of this browser detection script is that it will not be fooled by Opera or Safari, no matter how Opera is set to identify itself. It can also be used to deliver browser specific CSS stylesheets to the page depending on what browser is requesting the page. Since this is run on the server side, it doesn't require client side Javascripting to be enabled to function.
This code is more or less what we use for all our websites, in one form or another, when we need to set browser CSS and other coding particulars.
Currently this script identifies the following specific browsers: Opera, Internet Explorer 4, Internet Explorer, Mozilla/Netscape Gecko based browsers, Netscape 4.x, Konqueror, Safari. It id's Linux, Mac, most of the main Unix flavors, Windows NT, Windows regular. It is easy to add more browsers and OS's if required.
This small sample script gives some examples of how the detector can be used, in the first case it will print out the browser number, the browser, the operating system, and the operating system number or version (in the case of Unix) if available. The second example shows how you could use it in any of your scripts where knowing what browser is helpful.
<?php
echo ( browser_detection( 'browser_number' ) .'<br>'.
browser_detection( 'browser_working' ) .'<br>'.
browser_detection( 'os' ) .'<br>'.
browser_detection( 'os_number' ) );
?>
Outputs (browser number, browser name, os, os number):
1.5
moz
nt
5.1
<?php
if ( ( browser_detection( 'browser_working' ) == 'ie' )
&&
( browser_detection( 'browser_number' ) >= 5 ) )
{
echo 'it is Internet Explorer ' .
browser_detection( 'browser_number' );
// or anything else you want to happen of course
}
?>
This is your browser useragent string:
CCBot/1.0 (+http://www.commoncrawl.org/bot.html)
Manual Downloads
If for some reason the above download links didn't work, you can download these scripts here:
- Full Featured Javascript Browser detection
- Simple Javascript Browser detection
- PHP Browser detection (full featured)
- PHP Browser detection (simplified version of the above)
- PHP Browser detection (if conditional)
- 'Your Computer Information'
- PHP Language Detection