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.6.0
File Last Modified: April 09, 2014. 17:22:09 pm
Your Computer Box
Download: 'Your Computer' Box Script
Current Version: 1.3.4
File Last Modified: February 16, 2014. 18:02:39 pm
PHP Language Detection
Your Computer
Operating System:
Current Browser / UA:
HTML Support
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.6.0
Blink Layout Engine Support Added
Added support for Blink Layout Engine. Detecting this is a bit tricky, since it does not identify itself per se, still calling itself webkit. The script is future proofed against a time they change the name from webkit to blink, at least in theory.
Currently handled are Opera, which is easy to find because it uses the new OPR/[number] syntax in the useragent, Chrome I have to handle by checking the webkit version number, if >= 28, it is Blink. There is no blink types array yet because of the non unique nature of Chrome, which can be either webkit or blink.
As usual with big changes, there is a corresponding new UserAgent Switcher List xml file to allow for testing and debugging.
Version 5.5.5
Top Documentation cleanup
I made the top documentation much cleaner, now all descriptions include the full/full_assoc array keys, sorted alphabetically, to make it easier to find things in the list.
Version 5.5.4
Silk Kindle tablets, puffin user agents.
Updated to handle Silk in Kindle Fire, for both desktop/kindle. Added Puffin mobile browser support.
The puffin stuff in particular is very bad in terms of quality of UA string.
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:
ArchiveTeam ArchiveBot/20141009.02 (wpull 0.1002a1) and not Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.101 Safari/537.36
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