GeoIP2-php/doc/v0.3.0/class-GeoIp2.WebService.Client.html
2013-07-12 07:03:22 -07:00

440 lines
14 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="generator" content="ApiGen 2.8.0" />
<title>Class GeoIp2\WebService\Client | GeoIP2 PHP API v0.3.0</title>
<script type="text/javascript" src="resources/combined.js?394153670"></script>
<script type="text/javascript" src="elementlist.js?3653765077"></script>
<link rel="stylesheet" type="text/css" media="all" href="resources/style.css?3505392360" />
</head>
<body>
<div id="left">
<div id="menu">
<a href="index.html" title="Overview"><span>Overview</span></a>
<div id="groups">
<h3>Namespaces</h3>
<ul>
<li class="active"><a href="namespace-GeoIp2.html">GeoIp2<span></span></a>
<ul>
<li><a href="namespace-GeoIp2.Exception.html">Exception</a>
</li>
<li><a href="namespace-GeoIp2.Model.html">Model</a>
</li>
<li><a href="namespace-GeoIp2.Record.html">Record</a>
</li>
<li class="active"><a href="namespace-GeoIp2.WebService.html">WebService</a>
</li>
</ul></li>
<li><a href="namespace-PHP.html">PHP</a>
</li>
</ul>
</div>
<hr />
<div id="elements">
<h3>Classes</h3>
<ul>
<li class="active"><a href="class-GeoIp2.WebService.Client.html">Client</a></li>
</ul>
</div>
</div>
</div>
<div id="splitter"></div>
<div id="right">
<div id="rightInner">
<form id="search">
<input type="hidden" name="cx" value="" />
<input type="hidden" name="ie" value="UTF-8" />
<input type="text" name="q" class="text" />
<input type="submit" value="Search" />
</form>
<div id="navigation">
<ul>
<li>
<a href="index.html" title="Overview"><span>Overview</span></a>
</li>
<li>
<a href="namespace-GeoIp2.WebService.html" title="Summary of GeoIp2\WebService"><span>Namespace</span></a>
</li>
<li class="active">
<span>Class</span> </li>
</ul>
<ul>
<li>
<a href="tree.html" title="Tree view of classes, interfaces, traits and exceptions"><span>Tree</span></a>
</li>
</ul>
<ul>
<li>
<a href="geoip2-php-api-v0-3-0-api-documentation.zip" title="Download documentation as ZIP archive"><span>Download</span></a>
</li>
</ul>
</div>
<div id="content" class="class">
<h1>Class Client</h1>
<div class="description">
<p>This class provides a client API for all the GeoIP2 web service's end points.
The end points are Country, City, City/ISP/Org, and Omni. Each end point returns
a different set of data about an IP address, with Country returning the least
data and Omni the most.</p>
<p>Each web service end point is represented by a different model class, and
these model classes in turn contain multiple Record classes. The record classes
have attributes which contain data about the IP address.</p>
<p>If the web service does not return a particular piece of data for an IP
address, the associated attribute is not populated.</p>
<p>The web service may not return any information for an entire record, in which
case all of the attributes for that record class will be empty.</p>
<p><strong>Usage</strong></p>
<p>The basic API for this class is the same for all of the web service end
points. First you create a web service object with your MaxMind <code>&lt;span
class="php-var"&gt;$userId&lt;/span&gt;</code> and <code>&lt;span
class="php-var"&gt;$licenseKey&lt;/span&gt;</code>, then you call the method
corresponding to a specific end point, passing it the IP address you want to
look up.</p>
<p>If the request succeeds, the method call will return a model class for the
end point you called. This model in turn contains multiple record classes, each
of which represents part of the data returned by the web service.</p>
<p>If the request fails, the client class throws an exception.</p>
<p><strong>Exceptions</strong></p>
<p>For details on the possible errors returned by the web service itself, see
<a href="http://dev.maxmind.com/geoip2/geoip/web-services">the GeoIP2 web service docs</a>.</p>
<p>If the web service returns an explicit error document, this is thrown as a
<code><a href="class-GeoIp2.Exception.WebServiceException.html">GeoIp2\Exception\WebServiceException</a></code>. If some other sort of transport
error occurs, this is thrown as a <code><a href="class-GeoIp2.Exception.HttpException.html">GeoIp2\Exception\HttpException</a></code>. The
difference is that the web service error includes an error message and error
code delivered by the web service. The latter is thrown when some sort of
unanticipated error occurs, such as the web service returning a 500 or an
invalid error document.</p>
<p>If the web service returns any status code besides 200, 4xx, or 5xx, this
also becomes a <code><a href="class-GeoIp2.Exception.HttpException.html">GeoIp2\Exception\HttpException</a></code>.</p>
<p>Finally, if the web service returns a 200 but the body is invalid, the client
throws a <code><a href="class-GeoIp2.Exception.GeoIp2Exception.html">GeoIp2\Exception\GeoIp2Exception</a></code>.</p>
</div>
<div class="info">
<b>Namespace:</b> <a href="namespace-GeoIp2.html">GeoIp2</a>\<a href="namespace-GeoIp2.WebService.html">WebService</a><br />
<b>Located at</b> <a href="source-class-GeoIp2.WebService.Client.html#17-312" title="Go to source code">GeoIp2/WebService/Client.php</a><br />
</div>
<table class="summary" id="methods">
<caption>Methods summary</caption>
<tr data-order="__construct" id="___construct">
<td class="attributes"><code>
public
</code>
</td>
<td class="name"><div>
<a class="anchor" href="#___construct">#</a>
<code><a href="source-class-GeoIp2.WebService.Client.html#76-100" title="Go to source code">__construct</a>( <span>integer <var>$userId</var></span>, <span>string <var>$licenseKey</var></span>, <span>array <var>$languages</var> = <span class="php-keyword1">array</span>(<span class="php-quote">'en'</span>)</span>, <span>string <var>$host</var> = <span class="php-quote">'geoip.maxmind.com'</span></span>, <span>object <var>$guzzleClient</var> = <span class="php-keyword1">null</span> </span> )</code>
<div class="description short">
<p>Constructor.</p>
</div>
<div class="description detailed hidden">
<p>Constructor.</p>
<h4>Parameters</h4>
<div class="list"><dl>
<dt><var>$userId</var></dt>
<dd><code>integer</code><br>$userId Your MaxMind user ID</dd>
<dt><var>$licenseKey</var></dt>
<dd><code>string</code><br>$licenseKey Your MaxMind license key</dd>
<dt><var>$languages</var></dt>
<dd><code>array</code><br>$languages List of language codes to use in name property from most preferred to
least preferred.</dd>
<dt><var>$host</var></dt>
<dd><code>string</code><br>$host Optional host parameter</dd>
<dt><var>$guzzleClient</var></dt>
<dd><code>object</code><br>$guzzleClient Optional Guzzle client to use (to facilitate unit testing).</dd>
</dl></div>
</div>
</div></td>
</tr>
<tr data-order="city" id="_city">
<td class="attributes"><code>
public
<code><a href="class-GeoIp2.Model.City.html">GeoIp2\Model\City</a></code>
</code>
</td>
<td class="name"><div>
<a class="anchor" href="#_city">#</a>
<code><a href="source-class-GeoIp2.WebService.Client.html#102-121" title="Go to source code">city</a>( <span>string <var>$ipAddress</var> = <span class="php-quote">'me'</span></span> )</code>
<div class="description short">
<p>This method calls the GeoIP2 City endpoint.</p>
</div>
<div class="description detailed hidden">
<p>This method calls the GeoIP2 City endpoint.</p>
<h4>Parameters</h4>
<div class="list"><dl>
<dt><var>$ipAddress</var></dt>
<dd><code>string</code><br>$ipAddress IPv4 or IPv6 address as a string. If no address is provided, the
address that the web service is called from will be used.</dd>
</dl></div>
<h4>Returns</h4>
<div class="list">
<code><code><a href="class-GeoIp2.Model.City.html">GeoIp2\Model\City</a></code></code><br />
</div>
<h4>Throws</h4>
<div class="list">
<code><code><a href="class-GeoIp2.Exception.GeoIp2Exception.html">GeoIp2\Exception\GeoIp2Exception</a></code></code><br>if there was a generic error processing your request.<br />
<code><code><a href="class-GeoIp2.Exception.HttpException.html">GeoIp2\Exception\HttpException</a></code></code><br>if there was an HTTP transport error.<br />
<code><code><a href="class-GeoIp2.Exception.WebServiceException.html">GeoIp2\Exception\WebServiceException</a></code></code><br>if an error was returned by MaxMind's GeoIP2 web service.<br />
</div>
</div>
</div></td>
</tr>
<tr data-order="country" id="_country">
<td class="attributes"><code>
public
<code><a href="class-GeoIp2.Model.Country.html">GeoIp2\Model\Country</a></code>
</code>
</td>
<td class="name"><div>
<a class="anchor" href="#_country">#</a>
<code><a href="source-class-GeoIp2.WebService.Client.html#123-142" title="Go to source code">country</a>( <span>string <var>$ipAddress</var> = <span class="php-quote">'me'</span></span> )</code>
<div class="description short">
<p>This method calls the GeoIP2 Country endpoint.</p>
</div>
<div class="description detailed hidden">
<p>This method calls the GeoIP2 Country endpoint.</p>
<h4>Parameters</h4>
<div class="list"><dl>
<dt><var>$ipAddress</var></dt>
<dd><code>string</code><br>$ipAddress IPv4 or IPv6 address as a string. If no address is provided, the
address that the web service is called from will be used.</dd>
</dl></div>
<h4>Returns</h4>
<div class="list">
<code><code><a href="class-GeoIp2.Model.Country.html">GeoIp2\Model\Country</a></code></code><br />
</div>
<h4>Throws</h4>
<div class="list">
<code><code><a href="class-GeoIp2.Exception.GeoIp2Exception.html">GeoIp2\Exception\GeoIp2Exception</a></code></code><br>if there was a generic error processing your request.<br />
<code><code><a href="class-GeoIp2.Exception.HttpException.html">GeoIp2\Exception\HttpException</a></code></code><br>if there was an HTTP transport error.<br />
<code><code><a href="class-GeoIp2.Exception.WebServiceException.html">GeoIp2\Exception\WebServiceException</a></code></code><br>if an error was returned by MaxMind's GeoIP2 web service.<br />
</div>
</div>
</div></td>
</tr>
<tr data-order="cityIspOrg" id="_cityIspOrg">
<td class="attributes"><code>
public
<code><a href="class-GeoIp2.Model.CityIspOrg.html">GeoIp2\Model\CityIspOrg</a></code>
</code>
</td>
<td class="name"><div>
<a class="anchor" href="#_cityIspOrg">#</a>
<code><a href="source-class-GeoIp2.WebService.Client.html#144-163" title="Go to source code">cityIspOrg</a>( <span>string <var>$ipAddress</var> = <span class="php-quote">'me'</span></span> )</code>
<div class="description short">
<p>This method calls the GeoIP2 City/ISP/Org endpoint.</p>
</div>
<div class="description detailed hidden">
<p>This method calls the GeoIP2 City/ISP/Org endpoint.</p>
<h4>Parameters</h4>
<div class="list"><dl>
<dt><var>$ipAddress</var></dt>
<dd><code>string</code><br>$ipAddress IPv4 or IPv6 address as a string. If no address is provided, the
address that the web service is called from will be used.</dd>
</dl></div>
<h4>Returns</h4>
<div class="list">
<code><code><a href="class-GeoIp2.Model.CityIspOrg.html">GeoIp2\Model\CityIspOrg</a></code></code><br />
</div>
<h4>Throws</h4>
<div class="list">
<code><code><a href="class-GeoIp2.Exception.GeoIp2Exception.html">GeoIp2\Exception\GeoIp2Exception</a></code></code><br>if there was a generic error processing your request.<br />
<code><code><a href="class-GeoIp2.Exception.HttpException.html">GeoIp2\Exception\HttpException</a></code></code><br>if there was an HTTP transport error.<br />
<code><code><a href="class-GeoIp2.Exception.WebServiceException.html">GeoIp2\Exception\WebServiceException</a></code></code><br>if an error was returned by MaxMind's GeoIP2 web service.<br />
</div>
</div>
</div></td>
</tr>
<tr data-order="omni" id="_omni">
<td class="attributes"><code>
public
<code><a href="class-GeoIp2.Model.Omni.html">GeoIp2\Model\Omni</a></code>
</code>
</td>
<td class="name"><div>
<a class="anchor" href="#_omni">#</a>
<code><a href="source-class-GeoIp2.WebService.Client.html#165-184" title="Go to source code">omni</a>( <span>string <var>$ipAddress</var> = <span class="php-quote">'me'</span></span> )</code>
<div class="description short">
<p>This method calls the GeoIP2 Omni endpoint.</p>
</div>
<div class="description detailed hidden">
<p>This method calls the GeoIP2 Omni endpoint.</p>
<h4>Parameters</h4>
<div class="list"><dl>
<dt><var>$ipAddress</var></dt>
<dd><code>string</code><br>$ipAddress IPv4 or IPv6 address as a string. If no address is provided, the
address that the web service is called from will be used.</dd>
</dl></div>
<h4>Returns</h4>
<div class="list">
<code><code><a href="class-GeoIp2.Model.Omni.html">GeoIp2\Model\Omni</a></code></code><br />
</div>
<h4>Throws</h4>
<div class="list">
<code><code><a href="class-GeoIp2.Exception.GeoIp2Exception.html">GeoIp2\Exception\GeoIp2Exception</a></code></code><br>if there was a generic error processing your request.<br />
<code><code><a href="class-GeoIp2.Exception.HttpException.html">GeoIp2\Exception\HttpException</a></code></code><br>if there was an HTTP transport error.<br />
<code><code><a href="class-GeoIp2.Exception.WebServiceException.html">GeoIp2\Exception\WebServiceException</a></code></code><br>if an error was returned by MaxMind's GeoIP2 web service.<br />
</div>
</div>
</div></td>
</tr>
</table>
</div>
<div id="footer">
GeoIP2 PHP API v0.3.0 API documentation generated by <a href="http://apigen.org">ApiGen 2.8.0</a>
</div>
</div>
</div>
</body>
</html>