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) 2019, Wolfcast
|
|
|
|
Class Details
Class Variables
Class Methods
method addCustomBrowserDetection [line 337]
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 362]
boolean addCustomPlatformDetection(
string
$platformName, [mixed
$platformNameToLookFor = ''], [boolean
$isMobile = false])
|
|
Dynamically add support for a new platform.
Tags:
Parameters:
method androidVerToStr [line 653]
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 284]
BrowserDetection __construct(
[string
$useragent = ''])
|
|
BrowserDetection class constructor.
Tags:
Parameters:
method checkBrowserAndroid [line 698]
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 710]
boolean checkBrowserBingbot(
)
|
|
Determine if the browser is the Bingbot crawler or not.
Tags:
method checkBrowserBlackBerry [line 721]
boolean checkBrowserBlackBerry(
)
|
|
Determine if the browser is the BlackBerry browser or not.
Tags:
method checkBrowserChrome [line 757]
boolean checkBrowserChrome(
)
|
|
Determine if the browser is Chrome or not.
Tags:
method checkBrowserCustom [line 768]
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 788]
boolean checkBrowserEdge(
)
|
|
Determine if the browser is Edge or not.
Tags:
method checkBrowserFirebird [line 798]
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 809]
boolean checkBrowserFirefox(
)
|
|
Determine if the browser is Firefox or not.
Tags:
method checkBrowserGooglebot [line 830]
boolean checkBrowserGooglebot(
)
|
|
Determine if the browser is the Googlebot crawler or not.
Tags:
method checkBrowserIcab [line 850]
boolean checkBrowserIcab(
)
|
|
Determine if the browser is iCab or not.
Tags:
method checkBrowserIceCat [line 862]
boolean checkBrowserIceCat(
)
|
|
Determine if the browser is GNU IceCat (formerly known as GNU IceWeasel) or not.
Tags:
method checkBrowserIceWeasel [line 873]
boolean checkBrowserIceWeasel(
)
|
|
Determine if the browser is GNU IceWeasel (now know as GNU IceCat) or not.
Tags:
method checkBrowserInternetExplorer [line 885]
boolean checkBrowserInternetExplorer(
)
|
|
Determine if the browser is Internet Explorer or not.
Tags:
method checkBrowserKonqueror [line 976]
boolean checkBrowserKonqueror(
)
|
|
Determine if the browser is Konqueror or not.
Tags:
method checkBrowserLynx [line 988]
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 998]
boolean checkBrowserMozilla(
)
|
|
Determine if the browser is Mozilla or not.
Tags:
method checkBrowserMsnBot [line 1009]
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 1020]
boolean checkBrowserMsnTv(
)
|
|
Determine if the browser is MSN TV (formerly WebTV) or not.
Tags:
method checkBrowserNetscape [line 1031]
boolean checkBrowserNetscape(
)
|
|
Determine if the browser is Netscape or not. Official support for this browser ended on March 1st, 2008.
Tags:
method checkBrowserNokia [line 1084]
boolean checkBrowserNokia(
)
|
|
Determine if the browser is a Nokia browser or not.
Tags:
method checkBrowserOpera [line 1111]
boolean checkBrowserOpera(
)
|
|
Determine if the browser is Opera or not.
Tags:
method checkBrowserPhoenix [line 1147]
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 1157]
Determine what is the browser used by the user.
Tags:
method checkBrowserSafari [line 1206]
boolean checkBrowserSafari(
)
|
|
Determine if the browser is Safari or not.
Tags:
method checkBrowserSamsung [line 1245]
boolean checkBrowserSamsung(
)
|
|
Determine if the browser is the Samsung Internet browser or not.
Tags:
method checkBrowserSlurp [line 1255]
boolean checkBrowserSlurp(
)
|
|
Determine if the browser is the Yahoo! Slurp crawler or not.
Tags:
method checkBrowserUAWithVersion [line 1275]
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 1308]
boolean checkBrowserUC(
)
|
|
Determine if the browser is UC Browser or not.
Tags:
method checkBrowserW3CValidator [line 1319]
boolean checkBrowserW3CValidator(
)
|
|
Determine if the browser is the W3C Validator or not.
Tags:
method checkBrowserYahooMultimedia [line 1356]
boolean checkBrowserYahooMultimedia(
)
|
|
Determine if the browser is the Yahoo! multimedia crawler or not.
Tags:
method checkPlatform [line 1365]
Determine the user's platform.
Tags:
method checkPlatformCustom [line 1432]
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 1453]
void checkPlatformVersion(
)
|
|
Determine the user's platform version.
Tags:
method checkSimpleBrowserUA [line 1528]
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 1617]
string cleanVersion(
string
$version)
|
|
Clean a version string from unwanted characters.
Tags:
Parameters:
method compareVersions [line 384]
int compareVersions(
string
$sourceVer, string
$compareVer)
|
|
Compare two version number strings.
Tags:
Parameters:
method containString [line 1576]
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 1605]
Detect the user environment from the details in the user agent string.
Tags:
method getIECompatibilityView [line 441]
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 454]
Return the BrowserDetection class version.
Tags:
method getName [line 426]
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 465]
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 483]
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 519]
Get the user agent value used by the class to determine the browser details.
Tags:
method getVersion [line 528]
Get the version of the browser.
Tags:
method iOSVerToStr [line 1650]
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 538]
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 548]
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 559]
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 568]
Determine if the browser is from a mobile device or not.
Tags:
method isRobot [line 577]
Determine if the browser is a robot (Googlebot, Bingbot, Yahoo! Slurp...) or not.
Tags:
method macVerToStr [line 1666]
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 1713]
int parseInt(
string
$intStr)
|
|
Get the integer value of a string variable.
Tags:
Parameters:
method removeCustomBrowserDetection [line 588]
boolean removeCustomBrowserDetection(
string
$browserName)
|
|
Remove support for a previously added Web browser.
Tags:
Parameters:
method removeCustomPlatformDetection [line 604]
boolean removeCustomPlatformDetection(
string
$platformName)
|
|
Remove support for a previously added platform.
Tags:
Parameters:
method reset [line 1722]
Reset all the properties of the class.
Tags:
method safariBuildToSafariVer [line 1744]
string safariBuildToSafariVer(
string
$version)
|
|
Convert a Safari build number to a Safari version number.
Tags:
Parameters:
method set64bit [line 1838]
void set64bit(
boolean
$is64bit)
|
|
Set if the browser is executed from a 64-bit platform.
Tags:
Parameters:
method setBrowser [line 1848]
void setBrowser(
string
$browserName)
|
|
Set the name of the browser.
Tags:
Parameters:
method setMobile [line 1858]
void setMobile(
[boolean
$isMobile = true])
|
|
Set the browser to be from a mobile device or not.
Tags:
Parameters:
method setPlatform [line 1868]
void setPlatform(
string
$platform)
|
|
Set the platform on which the browser is on.
Tags:
Parameters:
method setPlatformVersion [line 1878]
void setPlatformVersion(
string
$platformVer)
|
|
Set the platform version on which the browser is on.
Tags:
Parameters:
method setRobot [line 1888]
void setRobot(
[boolean
$isRobot = true])
|
|
Set the browser to be a robot (crawler) or not.
Tags:
Parameters:
method setUserAgent [line 619]
void setUserAgent(
[string
$agentString = ''])
|
|
Set the user agent to use with the class.
Tags:
Parameters:
method setVersion [line 1898]
void setVersion(
string
$version)
|
|
Set the version of the browser.
Tags:
Parameters:
method webKitBuildToSafariVer [line 1917]
string webKitBuildToSafariVer(
string
$version)
|
|
Convert a WebKit build number to a Safari version number.
Tags:
Parameters:
method windowsNTVerToStr [line 2026]
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 2073]
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 2107]
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 293]
Determine how the class will react when it is treated like a string.
Tags:
Class Constants
BROWSER_ANDROID = 'Android'
[line 142]
Constant for the name of the Web browser.
BROWSER_BINGBOT = 'Bingbot'
[line 143]
Constant for the name of the Web browser.
BROWSER_BLACKBERRY = 'BlackBerry'
[line 144]
Constant for the name of the Web browser.
BROWSER_CHROME = 'Chrome'
[line 145]
Constant for the name of the Web browser.
BROWSER_EDGE = 'Edge'
[line 146]
Constant for the name of the Web browser.
BROWSER_FIREBIRD = 'Firebird'
[line 147]
Constant for the name of the Web browser.
BROWSER_FIREFOX = 'Firefox'
[line 148]
Constant for the name of the Web browser.
BROWSER_GOOGLEBOT = 'Googlebot'
[line 149]
Constant for the name of the Web browser.
BROWSER_ICAB = 'iCab'
[line 150]
Constant for the name of the Web browser.
BROWSER_ICECAT = 'GNU IceCat'
[line 151]
Constant for the name of the Web browser.
BROWSER_ICEWEASEL = 'GNU IceWeasel'
[line 152]
Constant for the name of the Web browser.
BROWSER_IE = 'Internet Explorer'
[line 153]
Constant for the name of the Web browser.
BROWSER_IE_MOBILE = 'Internet Explorer Mobile'
[line 154]
Constant for the name of the Web browser.
BROWSER_KONQUEROR = 'Konqueror'
[line 155]
Constant for the name of the Web browser.
BROWSER_LYNX = 'Lynx'
[line 156]
Constant for the name of the Web browser.
BROWSER_MOZILLA = 'Mozilla'
[line 157]
Constant for the name of the Web browser.
BROWSER_MSNBOT = 'MSNBot'
[line 158]
Constant for the name of the Web browser.
BROWSER_MSNTV = 'MSN TV'
[line 159]
Constant for the name of the Web browser.
BROWSER_NETSCAPE = 'Netscape'
[line 160]
Constant for the name of the Web browser.
BROWSER_NOKIA = 'Nokia Browser'
[line 161]
Constant for the name of the Web browser.
BROWSER_OPERA = 'Opera'
[line 162]
Constant for the name of the Web browser.
BROWSER_OPERA_MINI = 'Opera Mini'
[line 163]
Constant for the name of the Web browser.
BROWSER_OPERA_MOBILE = 'Opera Mobile'
[line 164]
Constant for the name of the Web browser.
BROWSER_PHOENIX = 'Phoenix'
[line 165]
Constant for the name of the Web browser.
BROWSER_SAFARI = 'Safari'
[line 166]
Constant for the name of the Web browser.
BROWSER_SAMSUNG = 'Samsung Internet'
[line 167]
Constant for the name of the Web browser.
BROWSER_SLURP = 'Yahoo! Slurp'
[line 168]
Constant for the name of the Web browser.
BROWSER_TABLET_OS = 'BlackBerry Tablet OS'
[line 169]
Constant for the name of the Web browser.
BROWSER_UC = 'UC Browser'
[line 170]
Constant for the name of the Web browser.
BROWSER_UNKNOWN = 'unknown'
[line 171]
Constant for the name of the Web browser.
BROWSER_W3CVALIDATOR = 'W3C Validator'
[line 172]
Constant for the name of the Web browser.
BROWSER_YAHOO_MM = 'Yahoo! Multimedia'
[line 173]
Constant for the name of the Web browser.
PLATFORM_ANDROID = 'Android'
[line 179]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_BLACKBERRY = 'BlackBerry'
[line 180]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_FREEBSD = 'FreeBSD'
[line 181]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_IOS = 'iOS'
[line 182]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_LINUX = 'Linux'
[line 183]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_MACINTOSH = 'Macintosh'
[line 184]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_NETBSD = 'NetBSD'
[line 185]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_NOKIA = 'Nokia'
[line 186]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_OPENBSD = 'OpenBSD'
[line 187]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_OPENSOLARIS = 'OpenSolaris'
[line 188]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_SYMBIAN = 'Symbian'
[line 189]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_UNKNOWN = 'unknown'
[line 190]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_VERSION_UNKNOWN = 'unknown'
[line 191]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_WINDOWS = 'Windows'
[line 192]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_WINDOWS_CE = 'Windows CE'
[line 193]
Constant for the name of the platform on which the Web browser runs.
PLATFORM_WINDOWS_PHONE = 'Windows Phone'
[line 194]
Constant for the name of the platform on which the Web browser runs.
VERSION_UNKNOWN = 'unknown'
[line 200]
Version unknown constant.
|
|