<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Pokemon_JOJO &#187; navigateur</title>
	<atom:link href="http://www.mibhouse.org/pokemon_jojo/tag/navigateur/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.mibhouse.org/pokemon_jojo</link>
	<description>Le Blog du Pokemon !</description>
	<lastBuildDate>Thu, 11 Mar 2010 19:38:14 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Détecter le navigateur utilisé avec $_SERVER[&#039;HTTP_USER_AGENT&#039;] en PHP</title>
		<link>http://www.mibhouse.org/pokemon_jojo/detecter-le-navigateur-utilise-avec-_serverhttp_user_agent-en-php/</link>
		<comments>http://www.mibhouse.org/pokemon_jojo/detecter-le-navigateur-utilise-avec-_serverhttp_user_agent-en-php/#comments</comments>
		<pubDate>Sat, 04 Jul 2009 14:21:08 +0000</pubDate>
		<dc:creator>Pokemon_JOJO</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[browser]]></category>
		<category><![CDATA[navigateur]]></category>
		<category><![CDATA[programmation]]></category>

		<guid isPermaLink="false">http://www.mibhouse.org/pokemon_jojo/?p=257</guid>
		<description><![CDATA[
Ayant besoin de définir des accès spécifiques à un back office en fonction du navigateur client utilisé (ex. pour ne pas autoriser IE). Ne voulant pas utiliser get_browser() (qui nécessite browscap.ini). J&#8217;ai créé une fonction PHP qui vous permet de détecter le navigateur utilisé, la version et le système d&#8217;exploitation d&#8217;un internaute en utilisant la [...]]]></description>
			<content:encoded><![CDATA[<p>
Ayant besoin de définir des accès spécifiques à un back office en fonction du navigateur client utilisé (ex. pour ne pas autoriser IE). Ne voulant pas utiliser <a href="http://fr.php.net/manual/fr/function.get-browser.php">get_browser()</a> (qui nécessite browscap.ini). J&#8217;ai créé une fonction PHP qui vous permet de détecter le navigateur utilisé, la version et le système d&#8217;exploitation d&#8217;un internaute en utilisant la variable $_SERVER['HTTP_USER_AGENT'].
</p>

<h2>function get_browser_agent()</h2>


<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #009933; font-style: italic;">/**
 * Permet de détecté le navigateur client utilisé
 * 
 * @info http://www.mibhouse.org/pokemon_jojo/
 * 
 * @param string $return Valeur de retour demandée
 *
 * @return string|array
 */</span>
<span style="color: #000000; font-weight: bold;">function</span> get_browser_agent<span style="color: #009900;">&#40;</span><span style="color: #000088;">$return</span> <span style="color: #339933;">=</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">global</span> <span style="color: #000088;">$browser_agent</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$return</span><span style="color: #009900;">&#41;</span>
		<span style="color: #000088;">$return</span> <span style="color: #339933;">=</span> <span style="color: #990000;">strtolower</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$return</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;">// Navigateurs connu</span>
	<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$return</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #000088;">$return</span> <span style="color: #339933;">==</span> <span style="color: #0000ff;">'browsers'</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #b1b100;">return</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
			<span style="color: #0000ff;">'firefox'</span>	<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'browser'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'shiretoko'</span>	<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'browser'</span><span style="color: #339933;">,</span> <span style="color: #666666; font-style: italic;">// nom de code de firefox 3.5 dev</span>
			<span style="color: #0000ff;">'msie'</span>		<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'browser'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'opera'</span>		<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'browser'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'chrome'</span>	<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'browser'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'safari'</span>	<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'browser'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'mozilla'</span>	<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'browser'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'seamonkey'</span>	<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'browser'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'konqueror'</span>	<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'browser'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'netscape'</span>	<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'browser'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'gecko'</span>		<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'browser'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'navigator'</span>	<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'browser'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'mosaic'</span>	<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'browser'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'lynx'</span>		<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'browser'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'amaya'</span>		<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'browser'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'omniweb'</span>	<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'browser'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'avant'</span>		<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'browser'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'camino'</span>	<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'browser'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'flock'</span>		<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'browser'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'aol'</span>		<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'browser'</span><span style="color: #339933;">,</span>
&nbsp;
			<span style="color: #0000ff;">'googlebot'</span>	<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'spider'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'msnbot'</span>	<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'spider'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'yahoo'</span>		<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'spider'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'ask'</span>		<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'spider'</span><span style="color: #339933;">,</span>
&nbsp;
			<span style="color: #0000ff;">'itunes'</span>	<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'other'</span><span style="color: #339933;">,</span>
		<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
	<span style="color: #666666; font-style: italic;">// Plateforme connue</span>
	<span style="color: #b1b100;">else</span> <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$return</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #000088;">$return</span> <span style="color: #339933;">==</span> <span style="color: #0000ff;">'platforms'</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #b1b100;">return</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
			<span style="color: #0000ff;">'android'</span>	<span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'android'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'freebsd'</span>	<span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'freebsd'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'linux'</span>		<span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'linux'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'iphone'</span>	<span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'iphone'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'zune'</span>		<span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'zune'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'mac'</span>		<span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'macintosh'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'mac platform x'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'mac os x'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'win'</span>		<span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'windows'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'win32'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>
		<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #990000;">isset</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$browser_agent</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #000088;">$browser_agent</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
			<span style="color: #0000ff;">'name'</span>		<span style="color: #339933;">=&gt;</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'version'</span>	<span style="color: #339933;">=&gt;</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'platform'</span>	<span style="color: #339933;">=&gt;</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'userAgent'</span> 	<span style="color: #339933;">=&gt;</span> <span style="color: #000088;">$_SERVER</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'HTTP_USER_AGENT'</span><span style="color: #009900;">&#93;</span> 
		<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
		<span style="color: #666666; font-style: italic;">// Navigateur + Version</span>
		<span style="color: #b1b100;">foreach</span><span style="color: #009900;">&#40;</span>get_browser_agent<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'browsers'</span><span style="color: #009900;">&#41;</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$browser</span> <span style="color: #339933;">=&gt;</span> <span style="color: #000088;">$type</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">preg_match</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;#(<span style="color: #006699; font-weight: bold;">$browser</span>)[/ ]?([0-9.]*)#&quot;</span><span style="color: #339933;">,</span> <span style="color: #990000;">strtolower</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$browser_agent</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'userAgent'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$match</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
				<span style="color: #000088;">$browser_agent</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'name'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$match</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
				<span style="color: #666666; font-style: italic;">// Hack safari</span>
				<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$browser_agent</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'name'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">==</span> <span style="color: #0000ff;">'safari'</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #990000;">preg_match</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;#version[/ ]?([0-9.]*)#&quot;</span><span style="color: #339933;">,</span> <span style="color: #990000;">strtolower</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$browser_agent</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'userAgent'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$match</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
					<span style="color: #000088;">$browser_agent</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'version'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$match</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">1</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
				<span style="color: #009900;">&#125;</span>
				<span style="color: #b1b100;">else</span>
					<span style="color: #000088;">$browser_agent</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'version'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$match</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
&nbsp;
				<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$type</span> <span style="color: #339933;">==</span> <span style="color: #0000ff;">'spider'</span><span style="color: #009900;">&#41;</span>
					<span style="color: #000088;">$browser_agent</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'platform'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$type</span><span style="color: #339933;">;</span>
&nbsp;
				<span style="color: #b1b100;">break</span><span style="color: #339933;">;</span>
			<span style="color: #009900;">&#125;</span>
		<span style="color: #009900;">&#125;</span>
&nbsp;
		<span style="color: #666666; font-style: italic;">// OS</span>
		<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #000088;">$browser_agent</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'platform'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			<span style="color: #b1b100;">foreach</span><span style="color: #009900;">&#40;</span>get_browser_agent<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'platforms'</span><span style="color: #009900;">&#41;</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$platform</span> <span style="color: #339933;">=&gt;</span> <span style="color: #000088;">$values</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
				<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #000088;">$browser_agent</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'platform'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
					<span style="color: #b1b100;">foreach</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$values</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$value</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
						<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">strpos</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">strtolower</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$browser_agent</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'userAgent'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$value</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
							<span style="color: #000088;">$browser_agent</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'platform'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$platform</span><span style="color: #339933;">;</span>
							<span style="color: #b1b100;">break</span><span style="color: #339933;">;</span>
						<span style="color: #009900;">&#125;</span>
					<span style="color: #009900;">&#125;</span>
				<span style="color: #009900;">&#125;</span>
				<span style="color: #b1b100;">else</span>
					<span style="color: #b1b100;">break</span><span style="color: #339933;">;</span>
			<span style="color: #009900;">&#125;</span>
		<span style="color: #009900;">&#125;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$return</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #990000;">isset</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$browser_agent</span><span style="color: #009900;">&#91;</span><span style="color: #000088;">$return</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
		<span style="color: #b1b100;">return</span> <span style="color: #000088;">$browser_agent</span><span style="color: #009900;">&#91;</span><span style="color: #000088;">$return</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
	<span style="color: #b1b100;">else</span> <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #000088;">$return</span><span style="color: #009900;">&#41;</span>
		<span style="color: #b1b100;">return</span> <span style="color: #000088;">$browser_agent</span><span style="color: #339933;">;</span>
	<span style="color: #b1b100;">else</span>
		<span style="color: #b1b100;">return</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>




<h2>Exemples d&#8217;utilisations</h2>

<h3>Exemple 1 : informations du navigateur</h3>


<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
<span style="color: #000088;">$browser</span> <span style="color: #339933;">=</span> get_browser_agent<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #990000;">print_r</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$browser</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>



<p>L&#8217;exemple ci-dessus va afficher quelque chose de similaire à :</p>


<div class="wp_syntax"><div class="code"><pre class="txt" style="font-family:monospace;">Array
(
    [name] =&gt; opera
    [version] =&gt; 9.64
    [platform] =&gt; linux
    [userAgent] =&gt; Opera/9.64 (X11; Linux i686; U; fr) Presto/2.1.1
)</pre></div></div>




<h3>Exemple 2 : nom du navigateur</h3>


<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
<span style="color: #000088;">$browser_name</span> <span style="color: #339933;">=</span> get_browser_agent<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'name'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #990000;">print_r</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$browser_name</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>



<p>L&#8217;exemple ci-dessus va afficher quelque chose de similaire à :</p>


<div class="wp_syntax"><div class="code"><pre class="txt" style="font-family:monospace;">opera</pre></div></div>




<h3>Exemple 3 : autoriser des navigateurs en tenant compte de leurs versions</h3>
<p>Il peut être utile de connaitre le navigateur utilisé et sa version pour par exemple autorisé l&#8217;accès à une application web uniquement aux navigateurs compatibles.</p>


<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
<span style="color: #666666; font-style: italic;">// Detection du navigateur</span>
<span style="color: #000088;">$browser</span> <span style="color: #339933;">=</span> get_browser_agent<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// Navigateurs autorisés (avec la version minimum requise)</span>
<span style="color: #000088;">$browser_allowed</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
	<span style="color: #0000ff;">'shiretoko'</span>		<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'3.5'</span><span style="color: #339933;">,</span>
	<span style="color: #0000ff;">'firefox'</span>		<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'3.0'</span><span style="color: #339933;">,</span>
	<span style="color: #0000ff;">'opera'</span>		<span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'9.0'</span><span style="color: #339933;">,</span>
<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// Le navigateur est t'il autorisé?</span>
<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">array_key_exists</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$browser</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'name'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$browser_allowed</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #990000;">version_compare</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$browser</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'version'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$browser_allowed</span><span style="color: #009900;">&#91;</span><span style="color: #000088;">$browser</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'name'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'&gt;='</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
	<span style="color: #000088;">$autorized</span> <span style="color: #339933;">=</span> <span style="color: #009900; font-weight: bold;">true</span><span style="color: #339933;">;</span> 
<span style="color: #b1b100;">else</span>
	<span style="color: #000088;">$autorized</span> <span style="color: #339933;">=</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #339933;">;</span> 
&nbsp;
<span style="color: #990000;">print_r</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$browser</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$autorized</span><span style="color: #009900;">&#41;</span>
	<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">'Votre navigateur est compatible. Vous êtes autorisé à accéder à l\'application.'</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">else</span>
	<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">'Votre navigateur n\'est pas compatible. Vous n\'êtes pas autorisé à accéder à l\'application.'</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>



<p>L&#8217;exemple ci-dessus va afficher quelque chose de similaire à :</p>


<div class="wp_syntax"><div class="code"><pre class="txt" style="font-family:monospace;">Array
(
    [name] =&gt; opera
    [version] =&gt; 9.64
    [platform] =&gt; linux
    [userAgent] =&gt; Opera/9.64 (X11; Linux i686; U; fr) Presto/2.1.1
)
Votre navigateur est compatible. Vous êtes autorisé à accéder à l'application.</pre></div></div>




<h2>Remarques et utilisations</h2>
<p>Vous êtes bien entendu autorisé à utiliser cette fonction dans vos propres scripts. Si tel est le cas, n&#8217;hésitez pas à me laisser un petit message, ça fait toujours plaisir <img src='http://www.mibhouse.org/pokemon_jojo/wp-content/plugins/tango-smilies/tango/face-wink.png' alt=';)' class='wp-smiley' /> . Évidemment vos commentaires, suggestions et améliorations sont toujours les bienvenues.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mibhouse.org/pokemon_jojo/detecter-le-navigateur-utilise-avec-_serverhttp_user_agent-en-php/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
	</channel>
</rss>
