NYCPHP Meetup

NYPHP.org

Anyone ever have any luck with get_browser()?

soazine@pop.erols.com soazine at pop.mail.rcn.net
Fri May 30 12:16:26 EDT 2003


taken from http://us4.php.net/manual/en/function.get-browser.php

object get_browser ( [string user_agent])


get_browser() attempts to determine the capabilities of the user's browser.
This is done by looking up the browser's information in the browscap.ini
file. By default, the value of HTTP_USER_AGENT is used; however, you can
alter this (i.e., look up another browser's info) by passing the optional
user_agent parameter to get_browser(). 

The information is returned in an object, which will contain various data
elements representing, for instance, the browser's major and minor version
numbers and ID string; TRUE/FALSE values for features such as frames,
JavaScript, and cookies; and so forth. 

While browscap.ini contains information on many browsers, it relies on user
updates to keep the database current. The format of the file is fairly
self-explanatory. 

The following example shows how one might list all available information
retrieved about the user's browser. Example 1. get_browser() example

<?php
echo $_SERVER['HTTP_USER_AGENT'] . "<hr />\
";

$browser = get_browser();

foreach ($browser as $name => $value) {
    print "<b>$name</b> $value <br />\
";
}

?>
 
 


The output of the above script would look something like this: 

Mozilla/4.5 [en] (X11; U; Linux 2.2.9 i586)<hr />
<b>browser_name_pattern:</b> Mozilla/4\\.5.*<br />
<b>parent:</b> Netscape 4.0<br />
<b>platform:</b> Linux<br />
<b>majorver:</b> 4<br />
<b>minorver:</b> 5<br />
<b>browser:</b> Netscape<br />
<b>version:</b> 4<br />
<b>frames:</b> 1<br />
<b>tables:</b> 1<br />
<b>cookies:</b> 1<br />
<b>backgroundsounds:</b> <br />
<b>vbscript:</b> <br />
<b>javascript:</b> 1<br />
<b>javaapplets:</b> 1<br />
<b>activexcontrols:</b> <br />
<b>beta:</b> <br />
<b>crawler:</b> <br />
<b>authenticodeupdate:</b> <br />
<b>msn:</b> <br />
----------------------------------------------------- 
I am using the PHP manual itself to define the get_browser() object as an
array.  However, when I do it I get the following error:

Warning: Invalid argument supplied for foreach() in
/users/ppowell/web/profile/display.php on line 8

Here is my code, lines 5-9:


   // DETERMINE IF THE USER'S BROWSER HAS JAVASCRIPT BY REARRANGING THE
get_browser() OBJECT AS AN ARRAY
   $browser = get_browser();
   foreach ($browser as $key => $val) {
    $browserArray = array($key, $val);
   }


-----------------------------------------------------

I hope this gives a more thorough background of what I have done to try to
determine the user's browser Javascript setting.

Phil

--------------------------------------------------------------------
mail2web - Check your email from the web at
http://mail2web.com/ .






More information about the talk mailing list