uTools-Manuals/docs/php/get_browser.html
2019-04-28 19:00:34 +08:00

148 lines
6.4 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>获取浏览器具有的功能</title>
</head>
<body class="docs"><div id="layout">
<div id="layout-content"><div id="function.get-browser" class="refentry">
<div class="refnamediv">
<h1 class="refname">get_browser</h1>
<p class="verinfo">(PHP 4, PHP 5, PHP 7)</p><p class="refpurpose"><span class="refname">get_browser</span> &mdash; <span class="dc-title">获取浏览器具有的功能</span></p>
</div>
<div class="refsect1 description" id="refsect1-function.get-browser-description">
<h3 class="title">说明</h3>
<div class="methodsynopsis dc-description">
<span class="methodname"><strong>get_browser</strong></span>
([ <span class="methodparam"><span class="type">string</span> <code class="parameter">$user_agent</code></span>
[, <span class="methodparam"><span class="type">bool</span> <code class="parameter">$return_array</code><span class="initializer"> = false</span></span>
]] ) : <span class="type"><a href="language.pseudo-types.html#language.types.mixed" class="type mixed">mixed</a></span></div>
<p class="para rdfs-comment">
通过查找 <var class="filename">browscap.ini</var> 文件中的浏览器信息,尝试检测用户的浏览器所具有的功能。
</p>
</div>
<div class="refsect1 parameters" id="refsect1-function.get-browser-parameters">
<h3 class="title">参数</h3>
<p class="para">
<dl>
<dt>
<code class="parameter">user_agent</code></dt>
<dd>
<p class="para">
要分析的用户代理。默认使用HTTP头中User-Agent的值不过你可以通过传递该参数改变User-Agent。(比如查找另一个浏览器的信息)
</p>
<p class="para">
你可以传递一个 <strong><code>NULL</code></strong> 来忽略该参数。
</p>
</dd>
<dt>
<code class="parameter">return_array</code></dt>
<dd>
<p class="para">
如果设置为 <strong><code>TRUE</code></strong>,该函数会返回一个 <span class="type"><a href="language.types.array.html" class="type array">array</a></span>,而不是 <span class="type"><a href="language.types.object.html" class="type object">object</a></span>
</p>
</dd>
</dl>
</p>
</div>
<div class="refsect1 returnvalues" id="refsect1-function.get-browser-returnvalues">
<h3 class="title">返回值</h3>
<p class="para">
信息会以包含一系列数据的数组或者对象返回。例如浏览器的主版本号、次版本号和ID字符串框架、JavaScript、cookies等功能是否支持 <strong><code>TRUE</code></strong>/<strong><code>FALSE</code></strong> 的值。
</p>
<p class="para">
<em>cookies</em> 的值仅意味着浏览器是否具有接收cookies的功能不代表用户是否已允许启用cookies。
测试的唯一办法,只有通过 <span class="function"><a href="setcookie.html" class="function">setcookie()</a></span> 设置一个cookie刷新页面并检测该cookie的值。
</p>
</div>
<div class="refsect1 examples" id="refsect1-function.get-browser-examples">
<h3 class="title">范例</h3>
<p class="para">
<div class="example" id="example-4538">
<p><strong>Example #1 列出所有用户浏览器的信息</strong></p>
<div class="example-contents">
<div class="phpcode"><pre><span style="color: #000000">
<span style="color: #0000BB">&lt;?php<br /></span><span style="color: #007700">echo&nbsp;</span><span style="color: #0000BB">$_SERVER</span><span style="color: #007700">[</span><span style="color: #DD0000">'HTTP_USER_AGENT'</span><span style="color: #007700">]&nbsp;.&nbsp;</span><span style="color: #DD0000">"\n\n"</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB">$browser&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">get_browser</span><span style="color: #007700">(</span><span style="color: #0000BB">null</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">true</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">print_r</span><span style="color: #007700">(</span><span style="color: #0000BB">$browser</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?&gt;</span>
</span>
</pre></div>
</div>
<div class="example-contents"><p>以上例程的输出类似于:</p></div>
<div class="example-contents screen">
<div class="cdata"><pre>
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040803 Firefox/0.9.3
Array
(
[browser_name_regex] =&gt; ^mozilla/5\.0 (windows; .; windows nt 5\.1; .*rv:.*) gecko/.* firefox/0\.9.*$
[browser_name_pattern] =&gt; Mozilla/5.0 (Windows; ?; Windows NT 5.1; *rv:*) Gecko/* Firefox/0.9*
[parent] =&gt; Firefox 0.9
[platform] =&gt; WinXP
[browser] =&gt; Firefox
[version] =&gt; 0.9
[majorver] =&gt; 0
[minorver] =&gt; 9
[cssversion] =&gt; 2
[frames] =&gt; 1
[iframes] =&gt; 1
[tables] =&gt; 1
[cookies] =&gt; 1
[backgroundsounds] =&gt;
[vbscript] =&gt;
[javascript] =&gt; 1
[javaapplets] =&gt; 1
[activexcontrols] =&gt;
[cdf] =&gt;
[aol] =&gt;
[beta] =&gt; 1
[win16] =&gt;
[crawler] =&gt;
[stripper] =&gt;
[wap] =&gt;
[netclr] =&gt;
)
</pre></div>
</div>
</div>
</p>
</div>
<div class="refsect1 notes" id="refsect1-function.get-browser-notes">
<h3 class="title">注释</h3>
<blockquote class="note"><p><strong class="note">Note</strong>:
<p class="para">
为了能让该函数运作,在 <var class="filename">php.ini</var> 中配置的 <a href="misc.configuration.html#ini.browscap" class="link">browscap</a> 必须指向 <var class="filename">browscap.ini</var> 文件的正确位置。
</p>
<p class="para">
<var class="filename">browscap.ini</var> 并未内置在PHP中不过你可以在这里找到最新的 <a href="http://browscap.org/" class="link external">&raquo;&nbsp;php_browscap.ini</a>
</p>
<p class="para">
<var class="filename">browscap.ini</var> 包含的诸多浏览器信息依赖于用户更新该数据库。该文件的格式不言自明。
</p>
</p></blockquote>
</div>
</div></div></div></body></html>