kostenloser Webspace werbefrei: lima-city


RegExp um BrowserVersion rauszufinden

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    m****r

    Hi,

    mal wieder was zu RegExp:

    Ich möchte eigentlich nur die Browserversion und den Browser selber rausfinden, den der User gerade benutzt.

    $Agent = $_SERVER['HTTP_USER_AGENT'];
    $Browser = 'Unknown';
    $Version = "";
    
        // Next get the name of the useragent yes seperately and for good reason
        if(preg_match('/MSIE/i',$Agent) && !preg_match('/Opera/i',$Agent)) {
            $Browser = 'Internet Explorer';
        }
        elseif(preg_match('/Firefox/i',$Agent)) {
            $Browser = 'Mozilla Firefox';
        }
        elseif(preg_match('/Chrome/i',$Agent)) {
            $Browser = 'Google Chrome';
        }
        elseif(preg_match('/Safari/i',$Agent)) {
            $Browser = 'Apple Safari';
        }
        elseif(preg_match('/Opera/i',$Agent)) {
            $Browser = 'Opera';
        }
        
        $Pattern = "/$Browser\/([0-9]\.[0-9]\.[0-9])/";
        $Version = preg_match($Pattern,$Agent);


    Den Browser selber finde ich ja so ganz leicht raus, aber wie kriege ich die Versionsnummer? Bei derartigen

    string(99) "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.52 Safari/536.5"

    $Agent strings komme ich grad irgendwie nicht an die Versionsnummer ran. Was mache ich falsch?

    Achja in php hab ichs auch schon über get_browser() versucht, allerdings kommt dann bei mir immer nur defaultbrowser und version:0 - weiß jemand wieso? Sonst könnte ich ja die Funktion benutzen, sie ist schön einfach.

    Danke!
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. privatecitypage

    Kostenloser Webspace von privatecitypage

    privatecitypage hat kostenlosen Webspace.

    Hallo,

    Zitat von php.net warum get_browsers nicht immer funktioniert:

    http://php.net/manual/de/function.get-browser.php
    Damit es richtig funktioniert, muss die browscap-Einstellung Ihrer php.ini auf die richtige browscap.ini-Datei Ihres Systems zeigen.
    browscap.ini ist nicht Bestandteil von PHP, ...


    Ich habe dein Code etwas angepasst ^^. Hoffe es Stört dich nicht :).

    <?php
    	$browser = array ( "name" => "Unbekannt", "version" => "Unbekannt", );
    	$valide_browser = array( 
    		"MSIE" =>  "Microsoft Internet Explorer",
    		"Firefox" => "Mozilla Firefox",
    		"Chrome" =>  "Google Chrome",
    		"Safari" => "Apple Safari",
    	);
    	foreach($valide_browser as $cute => $name) { if(strstr($_SERVER['HTTP_USER_AGENT'], $cute)) { $browser["name"] = $name; break;  } }
            preg_match('#(?<browser>' . join('|', array('Version', $cute)) . ')[/ ]+(?<version>[0-9.|a-zA-Z.]*)#', $_SERVER['HTTP_USER_AGENT'], $matches);	
    	if(isset($matches["version"])) { $browser["version"] = $matches["version"]; }
    	var_dump($browser);
    ?>


    Getestet mit Internet Explorer, Firefox, Chrome und Safari ;).

    Ausgaben von var_dump($browser):

    array (size=2)
      'name' => string 'Microsoft Internet Explorer' (length=27)
      'version' => string '9.0' (length=3)
    
    array (size=2)
      'name' => string 'Mozilla Firefox' (length=15)
      'version' => string '14.0' (length=4)
    
    array (size=2)
      'name' => string 'Google Chrome' (length=13)
      'version' => string '20.0.1132.47' (length=12)
    
    array (size=2)
      'name' => string 'Apple Safari' (length=12)
      'version' => string '5.1.7' (length=5)


    Bei Verständinis Probleme kannst du dich bei mir Melden ;).
    PS: das 2x nach dem Browser gejagt wird ist absicht ^^
  4. Hallo

    Du kannst auch die API von useragentstring.com nutzen, um Browser-Infos abzufragen


    habe dazu hier auch was im Forum gefunden im Beitrag: Browsername ohne get_browser()

    weiß nicht ob das besser ist als eigenes Regex
    aber da ist zumindest eine relativ umfangreiche Datenbank mit bekannten Browser-Strings

  5. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!