| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- Reviewed: no -->
- <sect1 id="zend.service.technorati">
- <title>Zend_Service_Technorati</title>
- <sect2 id="zend.service.technorati.introduction">
- <title>Introduction</title>
- <para>
- <classname>Zend_Service_Technorati</classname> provides an easy, intuitive and object-oriented interface for using
- the Technorati API. It provides access to all available
- <ulink url="http://technorati.com/developers/api/">Technorati API queries</ulink>
- and returns the original XML response as a friendly PHP object.
- </para>
- <para>
- <ulink url="http://technorati.com/">Technorati</ulink> is one of the most popular blog search engines.
- The API interface enables developers to retrieve information about a specific blog, search blogs matching a
- single tag or phrase and get information about a specific author (blogger). For a full list of available
- queries please see the
- <ulink url="http://technorati.com/developers/api/">Technorati API documentation</ulink>
- or the <link linkend="zend.service.technorati.queries">Available Technorati queries</link> section of this
- document.
- </para>
- </sect2>
- <sect2 id="zend.service.technorati.getting-started">
- <title>Getting Started</title>
- <para>
- Technorati requires a valid API key for usage. To get your own API Key you first need to
- <ulink url="http://technorati.com/signup/">create a new Technorati account</ulink>, then visit the
- <ulink url="http://technorati.com/developers/apikey.html">API Key section</ulink>.
- </para>
- <note>
- <title>API Key limits</title>
- <para>
- You can make up to 500 Technorati API calls per day, at no charge.
- Other usage limitations may apply, depending on the current Technorati API license.
- </para>
- </note>
- <para>
- Once you have a valid API key, you're ready to start using <classname>Zend_Service_Technorati</classname>.
- </para>
- </sect2>
- <sect2 id="zend.service.technorati.making-first-query">
- <title>Making Your First Query</title>
- <para>
- In order to run a query, first you need a <classname>Zend_Service_Technorati</classname> instance with a valid API
- key. Then choose one of the available query methods, and call it providing required arguments.
- </para>
- <example id="zend.service.technorati.making-first-query.example-1">
- <title>Sending your first query</title>
- <programlisting language="php"><![CDATA[
- // create a new Zend_Service_Technorati
- // with a valid API_KEY
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- // search Technorati for PHP keyword
- $resultSet = $technorati->search('PHP');
- ]]></programlisting>
- </example>
- <para>
- Each query method accepts an array of optional parameters that can be used to refine your query.
- </para>
- <example id="zend.service.technorati.making-first-query.example-2">
- <title>Refining your query</title>
- <programlisting language="php"><![CDATA[
- // create a new Zend_Service_Technorati
- // with a valid API_KEY
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- // filter your query including only results
- // with some authority (Results from blogs with a handful of links)
- $options = array('authority' => 'a4');
- // search Technorati for PHP keyword
- $resultSet = $technorati->search('PHP', $options);
- ]]></programlisting>
- </example>
- <para>
- A <classname>Zend_Service_Technorati</classname> instance is not a single-use object. That is, you don't need to
- create a new instance for each query call; simply use your current <classname>Zend_Service_Technorati</classname>
- object as long as you need it.
- </para>
- <example id="zend.service.technorati.making-first-query.example-3">
- <title>Sending multiple queries with the same Zend_Service_Technorati instance</title>
- <programlisting language="php"><![CDATA[
- // create a new Zend_Service_Technorati
- // with a valid API_KEY
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- // search Technorati for PHP keyword
- $search = $technorati->search('PHP');
- // get top tags indexed by Technorati
- $topTags = $technorati->topTags();
- ]]></programlisting>
- </example>
- </sect2>
- <sect2 id="zend.service.technorati.consuming-results">
- <title>Consuming Results</title>
- <para>
- You can get one of two types of result object in response to a query.
- </para>
- <para>
- The first group is represented by <classname>Zend_Service_Technorati_*ResultSet</classname> objects. A result set
- object is basically a collection of result objects. It extends the basic
- <classname>Zend_Service_Technorati_ResultSet</classname> class and implements the <code>SeekableIterator</code> PHP
- interface. The best way to consume a result set object is to loop over it with the PHP <code>foreach</code>
- statement.
- </para>
- <example id="zend.service.technorati.consuming-results.example-1">
- <title>Consuming a result set object</title>
- <programlisting language="php"><![CDATA[
- // create a new Zend_Service_Technorati
- // with a valid API_KEY
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- // search Technorati for PHP keyword
- // $resultSet is an instance of Zend_Service_Technorati_SearchResultSet
- $resultSet = $technorati->search('PHP');
- // loop over all result objects
- foreach ($resultSet as $result) {
- // $result is an instance of Zend_Service_Technorati_SearchResult
- }
- ]]></programlisting>
- </example>
- <para>
- Because <classname>Zend_Service_Technorati_ResultSet</classname> implements the <code>SeekableIterator</code>
- interface, you can seek a specific result object using its position in the result collection.
- </para>
- <example id="zend.service.technorati.consuming-results.example-2">
- <title>Seeking a specific result set object</title>
- <programlisting language="php"><![CDATA[
- // create a new Zend_Service_Technorati
- // with a valid API_KEY
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- // search Technorati for PHP keyword
- // $resultSet is an instance of Zend_Service_Technorati_SearchResultSet
- $resultSet = $technorati->search('PHP');
- // $result is an instance of Zend_Service_Technorati_SearchResult
- $resultSet->seek(1);
- $result = $resultSet->current();
- ]]></programlisting>
- </example>
- <note>
- <para>
- <code>SeekableIterator</code> works as an array and counts positions starting from index 0. Fetching
- position number 1 means getting the second result in the collection.
- </para>
- </note>
- <para>
- The second group is represented by special standalone result objects.
- <classname>Zend_Service_Technorati_GetInfoResult</classname>, <classname>Zend_Service_Technorati_BlogInfoResult</classname> and
- <classname>Zend_Service_Technorati_KeyInfoResult</classname> act as wrappers for additional objects, such as
- <classname>Zend_Service_Technorati_Author</classname> and <classname>Zend_Service_Technorati_Weblog</classname>.
- </para>
- <example id="zend.service.technorati.consuming-results.example-3">
- <title>Consuming a standalone result object</title>
- <programlisting language="php"><![CDATA[
- // create a new Zend_Service_Technorati
- // with a valid API_KEY
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- // get info about weppos author
- $result = $technorati->getInfo('weppos');
- $author = $result->getAuthor();
- echo '<h2>Blogs authored by ' . $author->getFirstName() . " " .
- $author->getLastName() . '</h2>';
- echo '<ol>';
- foreach ($result->getWeblogs() as $weblog) {
- echo '<li>' . $weblog->getName() . '</li>';
- }
- echo "</ol>";
- ]]></programlisting>
- </example>
- <para>
- Please read the <link linkend="zend.service.technorati.classes">Zend_Service_Technorati Classes</link>
- section for further details about response classes.
- </para>
- </sect2>
- <sect2 id="zend.service.technorati.handling-errors">
- <title>Handling Errors</title>
- <para>
- Each <classname>Zend_Service_Technorati</classname> query method throws a
- <classname>Zend_Service_Technorati_Exception</classname> exception on failure with a meaningful error message.
- </para>
- <para>
- There are several reasons that may cause a <classname>Zend_Service_Technorati</classname> query to fail.
- <classname>Zend_Service_Technorati</classname> validates all parameters for any query request. If a parameter is
- invalid or it contains an invalid value, a new <classname>Zend_Service_Technorati_Exception</classname> exception is
- thrown. Additionally, the Technorati API interface could be temporally unavailable, or it could return a
- response that is not well formed.
- </para>
- <para>
- You should always wrap a Technorati query with a <code>try</code>...<code>catch</code> block.
- </para>
- <example id="zend.service.technorati.handling-errors.example-1">
- <title>Handling a Query Exception</title>
- <programlisting language="php"><![CDATA[
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- try {
- $resultSet = $technorati->search('PHP');
- } catch(Zend_Service_Technorati_Exception $e) {
- echo "An error occurred: " $e->getMessage();
- }
- ]]></programlisting>
- </example>
- </sect2>
- <sect2 id="zend.service.technorati.checking-api-daily-usage">
- <title>Checking Your API Key Daily Usage</title>
- <para>
- From time to time you probably will want to check your API key daily usage. By default Technorati limits
- your API usage to 500 calls per day, and an exception is returned by <classname>Zend_Service_Technorati</classname>
- if you try to use it beyond this limit. You can get information about your API key usage using the
- <classname>Zend_Service_Technorati::keyInfo()</classname> method.
- </para>
- <para>
- <classname>Zend_Service_Technorati::keyInfo()</classname> returns a
- <classname>Zend_Service_Technorati_KeyInfoResult</classname> object. For full details please see the
- <ulink url="http://framework.zend.com/apidoc/core/">API reference guide</ulink>.
- </para>
- <example id="zend.service.technorati.checking-api-daily-usage.example-1">
- <title>Getting API key daily usage information</title>
- <programlisting language="php"><![CDATA[
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- $key = $technorati->keyInfo();
- echo "API Key: " . $key->getApiKey() . "<br />";
- echo "Daily Usage: " . $key->getApiQueries() . "/" .
- $key->getMaxQueries() . "<br />";
- ]]></programlisting>
- </example>
- </sect2>
- <sect2 id="zend.service.technorati.queries">
- <title>Available Technorati Queries</title>
- <para>
- <classname>Zend_Service_Technorati</classname> provides support for the following queries:
- <itemizedlist>
- <listitem><para><link linkend="zend.service.technorati.queries.cosmos"><code>Cosmos</code></link></para></listitem>
- <listitem><para><link linkend="zend.service.technorati.queries.search"><code>Search</code></link></para></listitem>
- <listitem><para><link linkend="zend.service.technorati.queries.tag"><code>Tag</code></link></para></listitem>
- <listitem><para><link linkend="zend.service.technorati.queries.dailycounts"><code>DailyCounts</code></link></para></listitem>
- <listitem><para><link linkend="zend.service.technorati.queries.toptags"><code>TopTags</code></link></para></listitem>
- <listitem><para><link linkend="zend.service.technorati.queries.bloginfo"><code>BlogInfo</code></link></para></listitem>
- <listitem><para><link linkend="zend.service.technorati.queries.blogposttags"><code>BlogPostTags</code></link></para></listitem>
- <listitem><para><link linkend="zend.service.technorati.queries.getinfo"><code>GetInfo</code></link></para></listitem>
- </itemizedlist>
- </para>
- <sect3 id="zend.service.technorati.queries.cosmos">
- <title>Technorati Cosmos</title>
- <para>
- <ulink url="http://technorati.com/developers/api/cosmos.html">Cosmos</ulink> query lets you see what
- blogs are linking to a given URL. It returns a
- <link linkend="zend.service.technorati.classes.cosmosresultset"><classname>Zend_Service_Technorati_CosmosResultSet</classname></link>
- object. For full details please see <classname>Zend_Service_Technorati::cosmos()</classname> in the
- <ulink url="http://framework.zend.com/apidoc/core/">API reference guide</ulink>.
- </para>
- <example id="zend.service.technorati.queries.cosmos.example-1">
- <title>Cosmos Query</title>
- <programlisting language="php"><![CDATA[
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- $resultSet = $technorati->cosmos('http://devzone.zend.com/');
- echo "<p>Reading " . $resultSet->totalResults() .
- " of " . $resultSet->totalResultsAvailable() .
- " available results</p>";
- echo "<ol>";
- foreach ($resultSet as $result) {
- echo "<li>" . $result->getWeblog()->getName() . "</li>";
- }
- echo "</ol>";
- ]]></programlisting>
- </example>
- </sect3>
- <sect3 id="zend.service.technorati.queries.search">
- <title>Technorati Search</title>
- <para>
- The <ulink url="http://technorati.com/developers/api/search.html">Search</ulink> query lets you see
- what blogs contain a given search string. It returns a
- <link linkend="zend.service.technorati.classes.searchresultset"><classname>Zend_Service_Technorati_SearchResultSet</classname></link>
- object. For full details please see <classname>Zend_Service_Technorati::search()</classname> in the
- <ulink url="http://framework.zend.com/apidoc/core/">API reference guide</ulink>.
- </para>
- <example id="zend.service.technorati.queries.search.example-1">
- <title>Search Query</title>
- <programlisting language="php"><![CDATA[
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- $resultSet = $technorati->search('zend framework');
- echo "<p>Reading " . $resultSet->totalResults() .
- " of " . $resultSet->totalResultsAvailable() .
- " available results</p>";
- echo "<ol>";
- foreach ($resultSet as $result) {
- echo "<li>" . $result->getWeblog()->getName() . "</li>";
- }
- echo "</ol>";
- ]]></programlisting>
- </example>
- </sect3>
- <sect3 id="zend.service.technorati.queries.tag">
- <title>Technorati Tag</title>
- <para>
- The <ulink url="http://technorati.com/developers/api/tag.html">Tag</ulink> query lets you see what
- posts are associated with a given tag. It returns a
- <link linkend="zend.service.technorati.classes.tagresultset"><classname>Zend_Service_Technorati_TagResultSet</classname></link>
- object. For full details please see <classname>Zend_Service_Technorati::tag()</classname> in the
- <ulink url="http://framework.zend.com/apidoc/core/">API reference guide</ulink>.
- </para>
- <example id="zend.service.technorati.queries.tag.example-1">
- <title>Tag Query</title>
- <programlisting language="php"><![CDATA[
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- $resultSet = $technorati->tag('php');
- echo "<p>Reading " . $resultSet->totalResults() .
- " of " . $resultSet->totalResultsAvailable() .
- " available results</p>";
- echo "<ol>";
- foreach ($resultSet as $result) {
- echo "<li>" . $result->getWeblog()->getName() . "</li>";
- }
- echo "</ol>";
- ]]></programlisting>
- </example>
- </sect3>
- <sect3 id="zend.service.technorati.queries.dailycounts">
- <title>Technorati DailyCounts</title>
- <para>
- The <ulink url="http://technorati.com/developers/api/dailycounts.html">DailyCounts</ulink> query
- provides daily counts of posts containing the queried keyword. It returns a
- <link linkend="zend.service.technorati.classes.dailycountsresultset"><classname>Zend_Service_Technorati_DailyCountsResultSet</classname></link>
- object. For full details please see <classname>Zend_Service_Technorati::dailyCounts()</classname> in the
- <ulink url="http://framework.zend.com/apidoc/core/">API reference guide</ulink>.
- </para>
- <example id="zend.service.technorati.queries.dailycounts.example-1">
- <title>DailyCounts Query</title>
- <programlisting language="php"><![CDATA[
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- $resultSet = $technorati->dailyCounts('php');
- foreach ($resultSet as $result) {
- echo "<li>" . $result->getDate() .
- "(" . $result->getCount() . ")</li>";
- }
- echo "</ol>";
- ]]></programlisting>
- </example>
- </sect3>
- <sect3 id="zend.service.technorati.queries.toptags">
- <title>Technorati TopTags</title>
- <para>
- The <ulink url="http://technorati.com/developers/api/toptags.html">TopTags</ulink> query provides
- information on top tags indexed by Technorati. It returns a
- <link linkend="zend.service.technorati.classes.tagsresultset"><classname>Zend_Service_Technorati_TagsResultSet</classname></link>
- object. For full details please see <classname>Zend_Service_Technorati::topTags()</classname> in the
- <ulink url="http://framework.zend.com/apidoc/core/">API reference guide</ulink>.
- </para>
- <example id="zend.service.technorati.queries.toptags.example-1">
- <title>TopTags Query</title>
- <programlisting language="php"><![CDATA[
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- $resultSet = $technorati->topTags();
- echo "<p>Reading " . $resultSet->totalResults() .
- " of " . $resultSet->totalResultsAvailable() .
- " available results</p>";
- echo "<ol>";
- foreach ($resultSet as $result) {
- echo "<li>" . $result->getTag() . "</li>";
- }
- echo "</ol>";
- ]]></programlisting>
- </example>
- </sect3>
- <sect3 id="zend.service.technorati.queries.bloginfo">
- <title>Technorati BlogInfo</title>
- <para>
- The <ulink url="http://technorati.com/developers/api/bloginfo.html">BlogInfo</ulink> query provides
- information on what blog, if any, is associated with a given URL. It returns a
- <link linkend="zend.service.technorati.classes.bloginforesult"><classname>Zend_Service_Technorati_BlogInfoResult</classname></link>
- object. For full details please see <classname>Zend_Service_Technorati::blogInfo()</classname> in the
- <ulink url="http://framework.zend.com/apidoc/core/">API reference guide</ulink>.
- </para>
- <example id="zend.service.technorati.queries.bloginfo.example-1">
- <title>BlogInfo Query</title>
- <programlisting language="php"><![CDATA[
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- $result = $technorati->blogInfo('http://devzone.zend.com/');
- echo '<h2><a href="' . (string) $result->getWeblog()->getUrl() . '">' .
- $result->getWeblog()->getName() . '</a></h2>';
- ]]></programlisting>
- </example>
- </sect3>
- <sect3 id="zend.service.technorati.queries.blogposttags">
- <title>Technorati BlogPostTags</title>
- <para>
- The <ulink url="http://technorati.com/developers/api/blogposttags.html">BlogPostTags</ulink> query
- provides information on the top tags used by a specific blog. It returns a
- <link linkend="zend.service.technorati.classes.tagsresultset"><classname>Zend_Service_Technorati_TagsResultSet</classname></link>
- object. For full details please see <classname>Zend_Service_Technorati::blogPostTags()</classname> in the
- <ulink url="http://framework.zend.com/apidoc/core/">API reference guide</ulink>.
- </para>
- <example id="zend.service.technorati.queries.blogposttags.example-1">
- <title>BlogPostTags Query</title>
- <programlisting language="php"><![CDATA[
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- $resultSet = $technorati->blogPostTags('http://devzone.zend.com/');
- echo "<p>Reading " . $resultSet->totalResults() .
- " of " . $resultSet->totalResultsAvailable() .
- " available results</p>";
- echo "<ol>";
- foreach ($resultSet as $result) {
- echo "<li>" . $result->getTag() . "</li>";
- }
- echo "</ol>";
- ]]></programlisting>
- </example>
- </sect3>
- <sect3 id="zend.service.technorati.queries.getinfo">
- <title>Technorati GetInfo</title>
- <para>
- The <ulink url="http://technorati.com/developers/api/getinfo.html">GetInfo</ulink> query tells you
- things that Technorati knows about a member. It returns a
- <link linkend="zend.service.technorati.classes.getinforesult"><classname>Zend_Service_Technorati_GetInfoResult</classname></link>
- object. For full details please see <classname>Zend_Service_Technorati::getInfo()</classname> in the
- <ulink url="http://framework.zend.com/apidoc/core/">API reference guide</ulink>.
- </para>
- <example id="zend.service.technorati.queries.getinfo.example-1">
- <title>GetInfo Query</title>
- <programlisting language="php"><![CDATA[
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- $result = $technorati->getInfo('weppos');
- $author = $result->getAuthor();
- echo "<h2>Blogs authored by " . $author->getFirstName() . " " .
- $author->getLastName() . "</h2>";
- echo "<ol>";
- foreach ($result->getWeblogs() as $weblog) {
- echo "<li>" . $weblog->getName() . "</li>";
- }
- echo "</ol>";
- ]]></programlisting>
- </example>
- </sect3>
- <sect3 id="zend.service.technorati.queries.keyinfo">
- <title>Technorati KeyInfo</title>
- <para>
- The KeyInfo query provides information on daily usage of an API key. It returns a
- <link linkend="zend.service.technorati.classes.keyinforesult"><classname>Zend_Service_Technorati_KeyInfoResult</classname></link>
- object. For full details please see <classname>Zend_Service_Technorati::keyInfo()</classname> in the
- <ulink url="http://framework.zend.com/apidoc/core/">API reference guide</ulink>.
- </para>
- </sect3>
- </sect2>
- <sect2 id="zend.service.technorati.classes">
- <title>Zend_Service_Technorati Classes</title>
- <para>
- The following classes are returned by the various Technorati queries. Each
- <classname>Zend_Service_Technorati_*ResultSet</classname> class holds a type-specific result set which can be easily
- iterated, with each result being contained in a type result object. All result set classes extend
- <classname>Zend_Service_Technorati_ResultSet</classname> class and implement the <code>SeekableIterator</code>
- interface, allowing for easy iteration and seeking to a specific result.
- <itemizedlist>
- <listitem><para><link linkend="zend.service.technorati.classes.resultset"><classname>Zend_Service_Technorati_ResultSet</classname></link></para></listitem>
- <listitem><para><link linkend="zend.service.technorati.classes.cosmosresultset"><classname>Zend_Service_Technorati_CosmosResultSet</classname></link></para></listitem>
- <listitem><para><link linkend="zend.service.technorati.classes.searchresultset"><classname>Zend_Service_Technorati_SearchResultSet</classname></link></para></listitem>
- <listitem><para><link linkend="zend.service.technorati.classes.tagresultset"><classname>Zend_Service_Technorati_TagResultSet</classname></link></para></listitem>
- <listitem><para><link linkend="zend.service.technorati.classes.dailycountsresultset"><classname>Zend_Service_Technorati_DailyCountsResultSet</classname></link></para></listitem>
- <listitem><para><link linkend="zend.service.technorati.classes.tagsresultset"><classname>Zend_Service_Technorati_TagsResultSet</classname></link></para></listitem>
- <listitem><para><link linkend="zend.service.technorati.classes.result"><classname>Zend_Service_Technorati_Result</classname></link></para></listitem>
- <listitem><para><link linkend="zend.service.technorati.classes.cosmosresult"><classname>Zend_Service_Technorati_CosmosResult</classname></link></para></listitem>
- <listitem><para><link linkend="zend.service.technorati.classes.searchresult"><classname>Zend_Service_Technorati_SearchResult</classname></link></para></listitem>
- <listitem><para><link linkend="zend.service.technorati.classes.tagresult"><classname>Zend_Service_Technorati_TagResult</classname></link></para></listitem>
- <listitem><para><link linkend="zend.service.technorati.classes.dailycountsresult"><classname>Zend_Service_Technorati_DailyCountsResult</classname></link></para></listitem>
- <listitem><para><link linkend="zend.service.technorati.classes.tagsresult"><classname>Zend_Service_Technorati_TagsResult</classname></link></para></listitem>
- <listitem><para><link linkend="zend.service.technorati.classes.getinforesult"><classname>Zend_Service_Technorati_GetInfoResult</classname></link></para></listitem>
- <listitem><para><link linkend="zend.service.technorati.classes.bloginforesult"><classname>Zend_Service_Technorati_BlogInfoResult</classname></link></para></listitem>
- <listitem><para><link linkend="zend.service.technorati.classes.keyinforesult"><classname>Zend_Service_Technorati_KeyInfoResult</classname></link></para></listitem>
- </itemizedlist>
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_GetInfoResult</classname>, <classname>Zend_Service_Technorati_BlogInfoResult</classname>
- and <classname>Zend_Service_Technorati_KeyInfoResult</classname> represent exceptions to the above because they
- don't belong to a result set and they don't implement any interface. They represent a single response
- object and they act as a wrapper for additional <classname>Zend_Service_Technorati</classname> objects, such as
- <classname>Zend_Service_Technorati_Author</classname> and <classname>Zend_Service_Technorati_Weblog</classname>.
- </para>
- </note>
- <para>
- The <classname>Zend_Service_Technorati</classname> library includes additional convenient classes representing
- specific response objects. <classname>Zend_Service_Technorati_Author</classname> represents a single Technorati
- account, also known as a blog author or blogger. <classname>Zend_Service_Technorati_Weblog</classname> represents a
- single weblog object, along with all specific weblog properties such as feed URLs or blog name. For full
- details please see <classname>Zend_Service_Technorati</classname> in the
- <ulink url="http://framework.zend.com/apidoc/core/">API reference guide</ulink>.
- </para>
- <sect3 id="zend.service.technorati.classes.resultset">
- <title>Zend_Service_Technorati_ResultSet</title>
- <para>
- <classname>Zend_Service_Technorati_ResultSet</classname> is the most essential result set. The scope of this
- class is to be extended by a query-specific child result set class, and it should never be used to
- initialize a standalone object. Each of the specific result sets represents a collection of
- query-specific
- <link linkend="zend.service.technorati.classes.result"><classname>Zend_Service_Technorati_Result</classname></link>
- objects.
- </para>
- <para>
- <classname>Zend_Service_Technorati_ResultSet</classname> implements the PHP <code>SeekableIterator</code>
- interface, and you can iterate all result objects via the PHP <code>foreach</code> statement.
- </para>
- <example id="zend.service.technorati.classes.resultset.example-1">
- <title>Iterating result objects from a resultset collection</title>
- <programlisting language="php"><![CDATA[
- // run a simple query
- $technorati = new Zend_Service_Technorati('VALID_API_KEY');
- $resultSet = $technorati->search('php');
- // $resultSet is now an instance of
- // Zend_Service_Technorati_SearchResultSet
- // it extends Zend_Service_Technorati_ResultSet
- foreach ($resultSet as $result) {
- // do something with your
- // Zend_Service_Technorati_SearchResult object
- }
- ]]></programlisting>
- </example>
- </sect3>
- <sect3 id="zend.service.technorati.classes.cosmosresultset">
- <title>Zend_Service_Technorati_CosmosResultSet</title>
- <para>
- <classname>Zend_Service_Technorati_CosmosResultSet</classname> represents a Technorati Cosmos query result set.
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_CosmosResultSet</classname> extends
- <link linkend="zend.service.technorati.classes.resultset">Zend_Service_Technorati_ResultSet</link>.
- </para>
- </note>
- </sect3>
- <sect3 id="zend.service.technorati.classes.searchresultset">
- <title>Zend_Service_Technorati_SearchResultSet</title>
- <para>
- <classname>Zend_Service_Technorati_SearchResultSet</classname> represents a Technorati Search query result set.
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_SearchResultSet</classname> extends
- <link linkend="zend.service.technorati.classes.resultset">Zend_Service_Technorati_ResultSet</link>.
- </para>
- </note>
- </sect3>
- <sect3 id="zend.service.technorati.classes.tagresultset">
- <title>Zend_Service_Technorati_TagResultSet</title>
- <para>
- <classname>Zend_Service_Technorati_TagResultSet</classname> represents a Technorati Tag query result set.
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_TagResultSet</classname> extends
- <link linkend="zend.service.technorati.classes.resultset">Zend_Service_Technorati_ResultSet</link>.
- </para>
- </note>
- </sect3>
- <sect3 id="zend.service.technorati.classes.dailycountsresultset">
- <title>Zend_Service_Technorati_DailyCountsResultSet</title>
- <para>
- <classname>Zend_Service_Technorati_DailyCountsResultSet</classname> represents a Technorati DailyCounts query result set.
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_DailyCountsResultSet</classname> extends
- <link linkend="zend.service.technorati.classes.resultset">Zend_Service_Technorati_ResultSet</link>.
- </para>
- </note>
- </sect3>
- <sect3 id="zend.service.technorati.classes.tagsresultset">
- <title>Zend_Service_Technorati_TagsResultSet</title>
- <para>
- <classname>Zend_Service_Technorati_TagsResultSet</classname> represents a Technorati TopTags or BlogPostTags queries result set.
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_TagsResultSet</classname> extends
- <link linkend="zend.service.technorati.classes.resultset">Zend_Service_Technorati_ResultSet</link>.
- </para>
- </note>
- </sect3>
- <sect3 id="zend.service.technorati.classes.result">
- <title>Zend_Service_Technorati_Result</title>
- <para>
- <classname>Zend_Service_Technorati_Result</classname> is the most essential result object. The scope of this
- class is to be extended by a query specific child result class, and it should never be used to
- initialize a standalone object.
- </para>
- </sect3>
- <sect3 id="zend.service.technorati.classes.cosmosresult">
- <title>Zend_Service_Technorati_CosmosResult</title>
- <para>
- <classname>Zend_Service_Technorati_CosmosResult</classname> represents a single Technorati Cosmos query result
- object. It is never returned as a standalone object, but it always belongs to a valid
- <link linkend="zend.service.technorati.classes.cosmosresultset">Zend_Service_Technorati_CosmosResultSet</link>
- object.
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_CosmosResult</classname> extends
- <link linkend="zend.service.technorati.classes.result">Zend_Service_Technorati_Result</link>.
- </para>
- </note>
- </sect3>
- <sect3 id="zend.service.technorati.classes.searchresult">
- <title>Zend_Service_Technorati_SearchResult</title>
- <para>
- <classname>Zend_Service_Technorati_SearchResult</classname> represents a single Technorati Search query result
- object. It is never returned as a standalone object, but it always belongs to a valid
- <link linkend="zend.service.technorati.classes.searchresultset">Zend_Service_Technorati_SearchResultSet</link>
- object.
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_SearchResult</classname> extends
- <link linkend="zend.service.technorati.classes.result">Zend_Service_Technorati_Result</link>.
- </para>
- </note>
- </sect3>
- <sect3 id="zend.service.technorati.classes.tagresult">
- <title>Zend_Service_Technorati_TagResult</title>
- <para>
- <classname>Zend_Service_Technorati_TagResult</classname> represents a single Technorati Tag query result object.
- It is never returned as a standalone object, but it always belongs to a valid
- <link linkend="zend.service.technorati.classes.tagresultset">Zend_Service_Technorati_TagResultSet</link>
- object.
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_TagResult</classname> extends
- <link linkend="zend.service.technorati.classes.result">Zend_Service_Technorati_Result</link>.
- </para>
- </note>
- </sect3>
- <sect3 id="zend.service.technorati.classes.dailycountsresult">
- <title>Zend_Service_Technorati_DailyCountsResult</title>
- <para>
- <classname>Zend_Service_Technorati_DailyCountsResult</classname> represents a single Technorati DailyCounts query
- result object. It is never returned as a standalone object, but it always belongs to a valid
- <link linkend="zend.service.technorati.classes.dailycountsresultset">Zend_Service_Technorati_DailyCountsResultSet</link>
- object.
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_DailyCountsResult</classname> extends
- <link linkend="zend.service.technorati.classes.result">Zend_Service_Technorati_Result</link>.
- </para>
- </note>
- </sect3>
- <sect3 id="zend.service.technorati.classes.tagsresult">
- <title>Zend_Service_Technorati_TagsResult</title>
- <para>
- <classname>Zend_Service_Technorati_TagsResult</classname> represents a single Technorati TopTags or BlogPostTags
- query result object. It is never returned as a standalone object, but it always belongs to a valid
- <link linkend="zend.service.technorati.classes.tagsresultset">Zend_Service_Technorati_TagsResultSet </link>
- object.
- </para>
- <note>
- <para>
- <classname>Zend_Service_Technorati_TagsResult</classname> extends
- <link linkend="zend.service.technorati.classes.result">Zend_Service_Technorati_Result</link>.
- </para>
- </note>
- </sect3>
- <sect3 id="zend.service.technorati.classes.getinforesult">
- <title>Zend_Service_Technorati_GetInfoResult</title>
- <para>
- <classname>Zend_Service_Technorati_GetInfoResult</classname> represents a single Technorati GetInfo query result
- object.
- </para>
- </sect3>
- <sect3 id="zend.service.technorati.classes.bloginforesult">
- <title>Zend_Service_Technorati_BlogInfoResult</title>
- <para>
- <classname>Zend_Service_Technorati_BlogInfoResult</classname> represents a single Technorati BlogInfo query
- result object.
- </para>
- </sect3>
- <sect3 id="zend.service.technorati.classes.keyinforesult">
- <title>Zend_Service_Technorati_KeyInfoResult</title>
- <para>
- <classname>Zend_Service_Technorati_KeyInfoResult</classname> represents a single Technorati KeyInfo query result
- object. It provides information about your
- <link linkend="zend.service.technorati.checking-api-daily-usage">Technorati API Key daily usage</link>.
- </para>
- </sect3>
- </sect2>
- </sect1>
|