| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- Reviewed: no -->
- <sect1 id="zend.http.user-agent-features">
- <title>The UserAgent Features Adapter</title>
- <sect2 id="zend.http.user-agent-features.intro">
- <title>Overview</title>
- <para>
- A variety of databases exist that define browser device features and capabilities.
- <classname>Zend_Http_UserAgent</classname> provides the ability to utilize the database
- of your choice via a features adapter interface.
- </para>
- <para>
- The features adapter is passed a request array that contains the User-Agent string and
- any other relevant HTTP headers and environment pertinent to detecting the device in
- use. Additionally, if any adapter-specific configuration might be needed, an additional
- configuration array will be provided. The adapter must then return an array of device
- capabilities.
- </para>
- </sect2>
- <sect2 id="zend.http.user-agent-features.quick-start">
- <title>Quick Start</title>
- <para>
- The adapter interface is quite simple, defining but the single static method
- <methodname>getFromRequest()</methodname>.
- </para>
- <programlisting language="php"><![CDATA[
- interface Zend_Http_UserAgent_Features_Adapter
- {
- /**
- * Retrieve the browser's features from a given request object ($_SERVER)
- *
- * @return array
- */
- public static function getFromRequest($request, array $config);
- }
- ]]></programlisting>
- </sect2>
- <sect2 id="zend.http.user-agent-features.options">
- <title>Configuration Options</title>
- <para>
- Options are defined on a per-adapter basis.
- </para>
- </sect2>
- <sect2 id="zend.http.user-agent-features.methods">
- <title>Available Methods</title>
- <variablelist>
- <varlistentry id="zend.http.user-agent-features.methods.get-from-request">
- <term>
- <methodsynopsis>
- <methodname>getFromRequest</methodname>
- <methodparam>
- <funcparams>array $request, array $config</funcparams>
- </methodparam>
- </methodsynopsis>
- </term>
- <listitem>
- <para>
- Decompose the request in order to return an array of device capabilities.
- </para>
- </listitem>
- </varlistentry>
- </variablelist>
- </sect2>
- </sect1>
|