Service/Akismet.php

Show: PublicProtectedPrivateinherited
Table of Contents
Zend Framework
LICENSE This source file is subject to the new BSD license that is bundled with this package in the file LICENSE.txt. It is also available through the world-wide-web at this URL: http://framework.zend.com/license/new-bsd If you did not receive a copy of the license and are unable to obtain it through the world-wide-web, please send an email to license@zend.com so we can send you a copy immediately.
Category
Zend  
Copyright
Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)  
License
New BSD License  
Package
Zend_Service  
Subpackage
Akismet  
Version
$Id$  

\Zend_Service_Akismet

Package: Zend_Service\Akismet
Akismet REST service implementation
Parent(s)
\Zend_Service_Abstract
Category
Zend  
Copyright
Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)  
License
New BSD License  
Uses
 

Properties

>VPropertyprotectedstring $_apiKey
Akismet API key
Details
Type
string
>VPropertyprotectedstring $_blogUrl
Blog URL
Details
Type
string
>VPropertyprotectedstring $_charset = 'UTF-8'
Charset used for encoding
Default value'UTF-8'Details
Type
string
>VPropertyprotectedint $_port = 80
TCP/IP port to use in requests
Default value80Details
Type
int
>VPropertyprotectedstring $_userAgent
User Agent string to send in requests
Details
Type
string

Methods

methodpublic__construct(string $apiKey, string $blog) : void

Constructor

Parameters
NameTypeDescription
$apiKeystring

Akismet API key

$blogstring

Blog URL

methodprotected_makeApiCall(string $path, array $params) : \Zend_Http_Response

Perform an API call

Parameters
NameTypeDescription
$pathstring
$paramsarray
Returns
TypeDescription
\Zend_Http_Response
Throws
ExceptionDescription
\Zend_Service_Exceptionif missing user_ip or user_agent fields
methodprotected_post(string $host, string $path, array $params) : mixed

Post a request

Parameters
NameTypeDescription
$hoststring
$pathstring
$paramsarray
Returns
TypeDescription
mixed
methodpublicgetApiKey() : string

Retrieve API key

Returns
TypeDescription
string
methodpublicgetBlogUrl() : string

Retrieve blog URL

Returns
TypeDescription
string
methodpublicgetCharset() : string

Retrieve charset

Returns
TypeDescription
string
methodpublicgetPort() : int

Retrieve TCP/IP port

Returns
TypeDescription
int
methodpublicgetUserAgent() : string

Retrieve User Agent string

Returns
TypeDescription
string
methodpublicisSpam(array $params) : boolean

Check a comment for spam

Checks a comment to see if it is spam. $params should be an associative array with one or more of the following keys (unless noted, all keys are optional): - blog: URL of the blog. If not provided, uses value returned by {@link getBlogUrl()} - user_ip (required): IP address of comment submitter - user_agent (required): User Agent used by comment submitter - referrer: contents of HTTP_REFERER header - permalink: location of the entry to which the comment was submitted - comment_type: typically, one of 'blank', 'comment', 'trackback', or 'pingback', but may be any value - comment_author: name submitted with the content - comment_author_email: email submitted with the content - comment_author_url: URL submitted with the content - comment_content: actual content Additionally, Akismet suggests returning the key/value pairs in the $_SERVER array, and these may be included in the $params. This method implements the Akismet comment-check REST method.
Parameters
NameTypeDescription
$paramsarray
Returns
TypeDescription
boolean
Throws
ExceptionDescription
\Zend_Service_Exceptionwith invalid API key
methodpublicsetApiKey(string $apiKey) : \Zend_Service_Akismet

Set API key

Parameters
NameTypeDescription
$apiKeystring
Returns
TypeDescription
\Zend_Service_Akismet
methodpublicsetBlogUrl(string $blogUrl) : \Zend_Service_Akismet

Set blog URL

Parameters
NameTypeDescription
$blogUrlstring
Returns
TypeDescription
\Zend_Service_Akismet
Throws
ExceptionDescription
\Zend_Service_Exceptionif invalid URL provided
methodpublicsetCharset(string $charset) : \Zend_Service_Akismet

Set charset

Parameters
NameTypeDescription
$charsetstring
Returns
TypeDescription
\Zend_Service_Akismet
methodpublicsetPort(int $port) : \Zend_Service_Akismet

Set TCP/IP port

Parameters
NameTypeDescription
$portint
Returns
TypeDescription
\Zend_Service_Akismet
Throws
ExceptionDescription
\Zend_Service_Exceptionif non-integer value provided
methodpublicsetUserAgent(string $userAgent) : \Zend_Service_Akismet

Set User Agent

Should be of form "Some user agent/version | Akismet/version"
Parameters
NameTypeDescription
$userAgentstring
Returns
TypeDescription
\Zend_Service_Akismet
Throws
ExceptionDescription
\Zend_Service_Exceptionwith invalid user agent string
methodpublicsubmitHam(array $params) : void

Submit ham

Takes the same arguments as {@link isSpam()}. Submits a comment that has been falsely categorized as spam by Akismet as a false positive, telling Akismet's filters not to filter such comments as spam in the future. Unlike {@link submitSpam()} and {@link isSpam()}, a valid API key is never necessary; as a result, this method never throws an exception (unless an exception happens with the HTTP client layer). this method implements Akismet's submit-ham REST method.
Parameters
NameTypeDescription
$paramsarray
methodpublicsubmitSpam(array $params) : void

Submit spam

Takes the same arguments as {@link isSpam()}. Submits known spam content to Akismet to help train it. This method implements Akismet's submit-spam REST method.
Parameters
NameTypeDescription
$paramsarray
Throws
ExceptionDescription
\Zend_Service_Exceptionwith invalid API key
methodpublicverifyKey(string $key = null, string $blog = null) : boolean

Verify an API key

Parameters
NameTypeDescription
$keystring

Optional; API key to verify

$blogstring

Optional; blog URL against which to verify key

Returns
TypeDescription
boolean
Documentation was generated by phpDocumentor 2.2.0 .