Apache PredictionIO SDK PHP

Clone this repo:
  1. f1e33f3 [PIO-163] Travis fixes by Donald Szeto · 9 days ago develop
  2. 2b99dcc [PIO-163] Stack upgrade and doc fix by Donald Szeto · 11 days ago
  3. 4f3a6e9 Use content encoding by Sebastian Grodzicki · 6 months ago
  4. d6916b7 Following the Composer best practices and simplified the installation step(s). by Jeffrey Cafferata · 6 months ago
  5. 0faa9bc Doc updates by Donald Szeto · 11 months ago

Apache PredictionIO PHP SDK

BuildStatus

Prerequisites

Note: This SDK only supports Apache PredictionIO version 0.8.2 or higher.

Getting Started

The easiest way to install PredictionIO PHP client is to use Composer.

  1. predictionio is available on Packagist and can be installed using Composer:

     composer require predictionio/predictionio
    
  2. Include Composer's autoloader in your PHP code

     require_once("vendor/autoload.php");
    

Usage

This package is a web service client based on Guzzle. A few quick examples are shown below.

Instantiate PredictionIO API Event Client

use predictionio\EventClient;
$accessKey = 'j4jIdbq59JsF2f4CXwwkIiVHNFnyNvWXqMqXxcIbQDqFRz5K0fe9e3QfqjKwvW3O';
$client = new EventClient($accessKey, 'http://localhost:7070');

Set a User Record from Your App

// assume you have a user with user ID 5
$response = $client->setUser(5);

Set an Item Record from Your App

// assume you have a book with ID 'bookId1' and we assign 1 as the type ID for book
$response = $client->setItem('bookId1', array('itypes' => 1));

Import a User Action (View) form Your App

// assume this user has viewed this book item
$client->recordUserActionOnItem('view', 5, 'bookId1');

Retrieving Prediction Result

// assume you have created an itemrank engine on localhost:8000
// we try to get ranking of 5 items (item IDs: 1, 2, 3, 4, 5) for a user (user ID 7)

$engineClient = new EngineClient('http://localhost:8000');
$response = $engineClient->sendQuery(array('uid'=>7, 'iids'=>array(1,2,3,4,5)));

print_r($response);

Bugs and Feature Requests

Use Apache JIRA to report bugs or request new features.

Community

Keep track of development and community news.

Contributing

Read the Contribute Code page.

License

Apache PredictionIO is under Apache 2 license.