Class: BrowserDetection
Source Location: /BrowserDetection.php
The BrowserDetection class facilitates the identification of the user's environment such as Web browser, version, platform and device type.
Author(s):
- Alexandre Valiquette, Chris Schuld, Gary White
Version:
Copyright:
- Copyright (c) 2018, Wolfcast
|
|
|
|
Class Details
Class Variables
Class Methods
method addCustomBrowserDetection [line 324]
boolean addCustomBrowserDetection(
string
$browserName, [mixed
$uaNameToLookFor = ''], [boolean
$isMobile = false], [boolean
$isRobot = false], [string
$separator = '/'], [boolean
$uaNameFindWords = true])
|
|
Dynamically add support for a new Web browser.
Tags:
Parameters:
method addCustomPlatformDetection [line 349]
boolean addCustomPlatformDetection(
string
$platformName, [mixed
$platformNameToLookFor = ''], [boolean
$isMobile = false])
|
|
Dynamically add support for a new platform.
Tags:
Parameters:
method androidVerToStr [line 635]
string androidVerToStr(
string
$androidVer)
|
|
Convert the Android version numbers to the operating system name. For instance '1.6' returns 'Donut'.
Tags:
Parameters:
constructor __construct [line 271]
BrowserDetection __construct(
[string
$useragent = ''])
|
|
BrowserDetection class constructor.
Tags:
Parameters:
method checkBrowserAndroid [line 676]
boolean checkBrowserAndroid(
)
|
|
Determine if the browser is the Android browser (based on the WebKit layout engine and coupled with Chrome's JavaScript engine) or not.
Tags:
method checkBrowserBingbot [line 688]
boolean checkBrowserBingbot(
)
|
|
Determine if the browser is the Bingbot crawler or not.
Tags:
method checkBrowserBlackBerry [line 699]
boolean checkBrowserBlackBerry(
)
|
|
Determine if the browser is the BlackBerry browser or not.
Tags:
method checkBrowserChrome [line 735]
boolean checkBrowserChrome(
)
|
|
Determine if the browser is Chrome or not.
Tags:
method checkBrowserCustom [line 746]
boolean checkBrowserCustom(
)
|
|
Determine if the browser is among the custom browser rules or not. Rules are checked in the order they were added.
Tags:
method checkBrowserEdge [line 766]
boolean checkBrowserEdge(
)
|
|
Determine if the browser is Edge or not.
Tags:
method checkBrowserFirebird [line 776]
boolean checkBrowserFirebird(
)
|
|
Determine if the browser is Firebird or not. Firebird was the name of Firefox from version 0.6 to 0.7.1.
Tags:
method checkBrowserFirefox [line 787]
boolean checkBrowserFirefox(
)
|
|
Determine if the browser is Firefox or not.
Tags:
method checkBrowserGooglebot [line 808]
boolean checkBrowserGooglebot(
)
|
|
Determine if the browser is the Googlebot crawler or not.
Tags:
method checkBrowserIcab [line 828]
boolean checkBrowserIcab(
)
|
|
Determine if the browser is iCab or not.
Tags:
method checkBrowserIceCat [line 840]
boolean checkBrowserIceCat(
)
|
|
Determine if the browser is GNU IceCat (formerly known as GNU IceWeasel) or not.
Tags:
method checkBrowserIceWeasel [line 851]
boolean checkBrowserIceWeasel(
)
|
|
Determine if the browser is GNU IceWeasel (now know as GNU IceCat) or not.
Tags:
method checkBrowserInternetExplorer [line 863]
boolean checkBrowserInternetExplorer(
)
|
|
Determine if the browser is Internet Explorer or not.
Tags:
method checkBrowserKonqueror [line 954]
boolean checkBrowserKonqueror(
)
|
|
Determine if the browser is Konqueror or not.
Tags:
method checkBrowserLynx [line 966]
boolean checkBrowserLynx(
)
|
|
Determine if the browser is Lynx or not. It is the oldest web browser currently in general use and development. It is a text-based only Web browser.
Tags:
method checkBrowserMozilla [line 976]
boolean checkBrowserMozilla(
)
|
|
Determine if the browser is Mozilla or not.
Tags:
method checkBrowserMsnBot [line 987]
boolean checkBrowserMsnBot(
)
|
|
Determine if the browser is the MSNBot crawler or not. In October 2010 it was replaced by the Bingbot robot.
Tags:
method checkBrowserMsnTv [line 998]
boolean checkBrowserMsnTv(
)
|
|
Determine if the browser is MSN TV (formerly WebTV) or not.
Tags:
method checkBrowserNetscape [line 1009]
boolean checkBrowserNetscape(
)
|
|
Determine if the browser is Netscape or not. Official support for this browser ended on March 1st, 2008.
Tags:
method checkBrowserNokia [line 1062]
boolean checkBrowserNokia(
)
|
|
Determine if the browser is a Nokia browser or not.
Tags:
method checkBrowserOpera [line 1089]
boolean checkBrowserOpera(
)
|
|
Determine if the browser is Opera or not.
Tags:
method checkBrowserPhoenix [line 1125]
boolean checkBrowserPhoenix(
)
|
|
Determine if the browser is Phoenix or not. Phoenix was the name of Firefox from version 0.1 to 0.5.
Tags:
method checkBrowsers [line 1135]
Determine what is the browser used by the user.
Tags:
method checkBrowserSafari [line 1184]
boolean checkBrowserSafari(
)
|
|
Determine if the browser is Safari or not.
Tags:
method checkBrowserSamsung [line 1223]
boolean checkBrowserSamsung(
)
|
|
Determine if the browser is the Samsung Internet browser or not.
Tags:
method checkBrowserSlurp [line 1233]
boolean checkBrowserSlurp(
)
|
|
Determine if the browser is the Yahoo! Slurp crawler or not.
Tags:
method checkBrowserUAWithVersion [line 1253]
boolean checkBrowserUAWithVersion(
mixed
$uaNameToLookFor, string
$userAgent, string
$browserName, [boolean
$isMobile = false], [boolean
$isRobot = false], [boolean
$findWords = true])
|
|
Test the user agent for a specific browser that use a "Version" string (like Safari and Opera). The user agent should look like: "Version/1.0 Browser name/123.456" or "Browser name/123.456 Version/1.0".
Tags:
Parameters:
method checkBrowserUC [line 1286]
boolean checkBrowserUC(
)
|
|
Determine if the browser is UC Browser or not.
Tags:
method checkBrowserW3CValidator [line 1297]
boolean checkBrowserW3CValidator(
)
|
|
Determine if the browser is the W3C Validator or not.
Tags:
method checkBrowserYahooMultimedia [line 1334]
boolean checkBrowserYahooMultimedia(
)
|
|
Determine if the browser is the Yahoo! multimedia crawler or not.
Tags:
method checkPlatform [line 1343]
Determine the user's platform.
Tags:
method checkPlatformCustom [line 1410]
boolean checkPlatformCustom(
)
|
|
Determine if the platform is among the custom platform rules or not. Rules are checked in the order they were added.
Tags:
method checkPlatformVersion [line 1431]
void checkPlatformVersion(
)
|
|
Determine the user's platform version.
Tags:
method checkSimpleBrowserUA [line 1506]
boolean checkSimpleBrowserUA(
mixed
$uaNameToLookFor, string
$userAgent, string
$browserName, [boolean
$isMobile = false], [boolean
$isRobot = false], [string
$separator = '/'], [boolean
$uaNameFindWords = true])
|
|
Test the user agent for a specific browser where the browser name is immediately followed by the version number. The user agent should look like: "Browser name/1.0" or "Browser 1.0;".
Tags:
Parameters:
method cleanVersion [line 1595]
string cleanVersion(
string
$version)
|
|
Clean a version string from unwanted characters.
Tags:
Parameters:
method compareVersions [line 371]
int compareVersions(
string
$sourceVer, string
$compareVer)
|
|
Compare two version number strings.
Tags:
Parameters:
method containString [line 1554]
boolean containString(
string
$haystack, mixed
$needle, [boolean
$insensitive = true], [boolean
$findWords = true])
|
|
Find if one or more substring is contained in a string.
Tags:
Parameters:
method detect [line 1583]
Detect the user environment from the details in the user agent string.
Tags:
method getIECompatibilityView [line 428]
mixed getIECompatibilityView(
[boolean
$asArray = false])
|
|
Get the name and version of the browser emulated in the compatibility view mode (if any). Since Internet Explorer 8, IE can be put in compatibility mode to make websites that were created for older browsers, especially IE 6 and 7, look better in IE 8+ which renders web pages closer to the standards and thus differently from those older versions of IE.
Tags:
Parameters:
method getLibVersion [line 441]
Return the BrowserDetection class version.
Tags:
method getName [line 413]
Get the name of the browser. All of the return values are class constants. You can compare them like this: $myBrowserInstance->getName() == BrowserDetection::BROWSER_FIREFOX.
Tags:
method getPlatform [line 452]
Get the name of the platform family on which the browser is run on (such as Windows, Apple, etc.). All of the return values are class constants. You can compare them like this: $myBrowserInstance->getPlatform() == BrowserDetection::PLATFORM_ANDROID.
Tags:
method getPlatformVersion [line 470]
string getPlatformVersion(
[boolean
$returnVersionNumbers = false], [boolean
$returnServerFlavor = false])
|
|
Get the platform version on which the browser is run on. It can be returned as a string number like 'NT 6.3' or as a name like 'Windows 8.1'. When returning version string numbers for Windows NT OS families the number is prefixed by 'NT ' to differentiate from older Windows 3.x & 9x release. At the moment only the Windows and Android operating systems are supported.
Tags:
Parameters:
method getUserAgent [line 509]
Get the user agent value used by the class to determine the browser details.
Tags:
method getVersion [line 518]
Get the version of the browser.
Tags:
method iOSVerToStr [line 1628]
string iOSVerToStr(
string
$iOSVer)
|
|
Convert the iOS version numbers to the operating system name. For instance '2.0' returns 'iPhone OS 2.0'.
Tags:
Parameters:
method is64bitPlatform [line 528]
boolean is64bitPlatform(
)
|
|
Determine if the browser is executed from a 64-bit platform. Keep in mind that not all platforms/browsers report this and the result may not always be accurate.
Tags:
method isChromeFrame [line 538]
Determine if the browser runs Google Chrome Frame (it's a plug-in designed for Internet Explorer 6+ based on the open-source Chromium project - it's like a Chrome browser within IE).
Tags:
method isInIECompatibilityView [line 549]
boolean isInIECompatibilityView(
)
|
|
Determine if the browser is in compatibility view or not. Since Internet Explorer 8, IE can be put in compatibility mode to make websites that were created for older browsers, especially IE 6 and 7, look better in IE 8+ which renders web pages closer to the standards and thus differently from those older versions of IE.
Tags:
method isMobile [line 558]
Determine if the browser is from a mobile device or not.
Tags:
method isRobot [line 567]
Determine if the browser is a robot (Googlebot, Bingbot, Yahoo! Slurp...) or not.
Tags:
method macVerToStr [line 1644]
string macVerToStr(
string
$macVer)
|
|
Convert the macOS version numbers to the operating system name. For instance '10.7' returns 'Mac OS X Lion'.
Tags:
Parameters:
method parseInt [line 1689]
int parseInt(
string
$intStr)
|
|
Get the integer value of a string variable.
Tags:
Parameters:
method removeCustomBrowserDetection [line 578]
boolean removeCustomBrowserDetection(
string
$browserName)
|
|
Remove support for a previously added Web browser.
Tags:
Parameters:
method removeCustomPlatformDetection [line 594]
boolean removeCustomPlatformDetection(
string
$platformName)
|
|
Remove support for a previously added platform.
Tags:
Parameters:
method reset [line 1698]
Reset all the properties of the class.
Tags:
method safariBuildToSafariVer [line 1720]
string safariBuildToSafariVer(
string
$version)
|
|
Convert a Safari build number to a Safari version number.
Tags:
Parameters:
method set64bit [line 1814]
void set64bit(
boolean
$is64bit)
|
|
Set if the browser is executed from a 64-bit platform.
Tags:
Parameters:
method setBrowser [line 1824]
void setBrowser(
string
$browserName)
|
|
Set the name of the browser.
Tags:
Parameters:
method setMobile [line 1834]
void setMobile(
[boolean
$isMobile = true])
|
|
Set the browser to be from a mobile device or not.
Tags:
Parameters:
method setPlatform [line 1844]
void setPlatform(
string
$platform)
|
|
Set the platform on which the browser is on.
Tags:
Parameters:
method setPlatformVersion [line 1854]
void setPlatformVersion(
string
$platformVer)
|
|
Set the platform version on which the browser is on.
Tags:
Parameters:
method setRobot [line 1864]
void setRobot(
[boolean
$isRobot = true])
|
|
Set the browser to be a robot (crawler) or not.
Tags:
Parameters:
method setUserAgent [line 609]
void setUserAgent(
[string
$agentString = ''])
|
|
Set the user agent to use with the class.
Tags:
Parameters:
method setVersion [line 1874]
void setVersion(
string
$version)
|
|
Set the version of the browser.
Tags:
Parameters:
method webKitBuildToSafariVer [line 1893]
string webKitBuildToSafariVer(
string
$version)
|
|
Convert a WebKit build number to a Safari version number.
Tags:
Parameters:
method windowsNTVerToStr [line 2002]
string windowsNTVerToStr(
string
$winVer, [boolean
$returnServerFlavor = false])
|
|
Convert the Windows NT family version numbers to the operating system name. For instance '5.1' returns 'Windows XP'.
Tags:
Parameters:
method windowsVerToStr [line 2049]
string windowsVerToStr(
string
$winVer)
|
|
Convert the Windows 3.x & 9x family version numbers to the operating system name. For instance '4.10.1998' returns 'Windows 98'.
Tags:
Parameters:
method wordPos [line 2083]
mixed wordPos(
string
$haystack, string
$needle, [boolean
$insensitive = true], [int
$offset = 0], [
&$foundString = NULL], string
$foundString)
|
|
Find the position of the first occurrence of a word in a string.
Tags:
Parameters:
method __toString [line 280]
Determine how the class will react when it is treated like a string.
Tags:
Class Constants
BROWSER_ANDROID = 'Android'
[line 129]
Constant for the name of the Web browser.
BROWSER_BINGBOT = 'Bingbot'
[line 130]
Constant for the name of the Web browser.
BROWSER_BLACKBERRY = 'BlackBerry'
[line 131]
Constant for the name of the Web browser.
BROWSER_CHROME = 'Chrome'
[line 132]
Constant for the name of the Web browser.
BROWSER_EDGE = 'Edge'
[line 133]
Constant for the name of the Web browser.
BROWSER_FIREBIRD = 'Firebird'
[line 134]
Constant for the name of the Web browser.
BROWSER_FIREFOX = 'Firefox'
[line 135]
Constant for the name of the Web browser.
BROWSER_GOOGLEBOT = 'Googlebot'
[line 136]
Constant for the name of the Web browser.
BROWSER_ICAB = 'iCab'
[line 137]
Constant for the name of the Web browser.
BROWSER_ICECAT = 'GNU IceCat'
[line 138]
Constant for the name of the Web browser.
BROWSER_ICEWEASEL = 'GNU IceWeasel'
[line 139]
Constant for the name of the Web browser.
BROWSER_IE = 'Internet Explorer'
[line 140]
Constant for the name of the Web browser.
BROWSER_IE_MOBILE = 'Internet Explorer Mobile'
[line 141]
Constant for the name of the Web browser.
BROWSER_KONQUEROR = 'Konqueror'
[line 142]
Constant for the name of the Web browser.
BROWSER_LYNX = 'Lynx'
[line 143]
Constant for the name of the Web browser.
BROWSER_MOZILLA = 'Mozilla'
[line 144]
Constant for the name of the Web browser.
BROWSER_MSNBOT = 'MSNBot'
[line 145]
Constant for the name of the Web browser.
BROWSER_MSNTV = 'MSN TV'
[line 146]
Constant for the name of the Web browser.
BROWSER_NETSCAPE = 'Netscape'
[line 147]
Constant for the name of the Web browser.
BROWSER_NOKIA = 'Nokia Browser'
[line 148]
Constant for the name of the Web browser.
BROWSER_OPERA = 'Opera'
[line 149]
Constant for the name of the Web browser.
BROWSER_OPERA_MINI = 'Opera Mini'
[line 150]
Constant for the name of the Web browser.
BROWSER_OPERA_MOBILE = 'Opera Mobile'
[line 151]
Constant for the name of the Web browser.
BROWSER_PHOENIX = 'Phoenix'
[line 152]
Constant for the name of the Web browser.
BROWSER_SAFARI = 'Safari'
[line 153]
Constant for the name of the Web browser.
BROWSER_SAMSUNG = 'Samsung Internet'
[line 154]
Constant for the name of the Web browser.
BROWSER_SLURP = 'Yahoo! Slurp'
[line 155]
Constant for the name of the Web browser.
BROWSER_TABLET_OS = 'BlackBerry Tablet OS'
[line 156]
Constant for the name of the Web browser.
BROWSER_UC = 'UC Browser'
[line 157]
Constant for the name of the Web browser.
BROWSER_UNKNOWN = 'unknown'
[line 158]
Constant for the name of the Web browser.
BROWSER_W3CVALIDATOR = 'W3C Validator'
[line 159]
Constant for the name of the Web browser.
BROWSER_YAHOO_MM = 'Yahoo! Multimedia'
[line 160]
Constant for the name of the Web browser.
PLATFORM_ANDROID = 'Android'
[line 166]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_BLACKBERRY = 'BlackBerry'
[line 167]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_FREEBSD = 'FreeBSD'
[line 168]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_IOS = 'iOS'
[line 169]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_LINUX = 'Linux'
[line 170]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_MACINTOSH = 'Macintosh'
[line 171]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_NETBSD = 'NetBSD'
[line 172]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_NOKIA = 'Nokia'
[line 173]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_OPENBSD = 'OpenBSD'
[line 174]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_OPENSOLARIS = 'OpenSolaris'
[line 175]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_SYMBIAN = 'Symbian'
[line 176]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_UNKNOWN = 'unknown'
[line 177]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_VERSION_UNKNOWN = 'unknown'
[line 178]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_WINDOWS = 'Windows'
[line 179]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_WINDOWS_CE = 'Windows CE'
[line 180]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_WINDOWS_PHONE = 'Windows Phone'
[line 181]
Constant for the name of the platform on which the Web browser runs.
VERSION_UNKNOWN = 'unknown'
[line 187]
Version unknown constant.
|
|