jippi / sixpack-php
Sixpack A/B testing framework client
Requires
- php: >=5.5.0
This package is auto-updated.
Last update: 2024-06-14 05:56:03 UTC
README
Sixpack
PHP client library for SeatGeak's Sixpack ab testing framework.
Installation
Simply clone the project and include sixpack.php
to your PHP Project
Usage
ALL THIS IS OUT OF DATE
Basic example:
The PHP client stores a unique client id in the current user's cookie by default.
$sp = new \Seatgeek\Sixpack\Session; $alt = $sp->participate('test', array('blue', 'red'))->getAlternative(); if ($alt == 'blue') { /* do something blue */ } else { /* do somethign red */ }
Each session has a client_id
associated with it that must be preserved across requests. The PHP client handles this automatically. If you'd wish to change that behavoir, you can do so like this:
$sp = new \Seatgeek\Sixpack\Session; $resp = $sp->participate("new-test", array("alternative-1", "alternative-2")); store_in_database("sixpack-id", $resp->getClientId());
For future requests, create the Session
using the client_id
stored in the cookie:
$client_id = get_from_database("sixpack-id") $sp = new \Seatgeek\Sixpack\Session(array('clientId' => $client_id)); $sp->convert('new-test');
Other possible options for the Session constructor are:
- baseUrl - Sixpack Server's location on the web
- cookiePrefix - you can set a different prefix for the cookie if you like. Default is
sixpack
If you'd like to force the Sixpack server to return a specific alternative for development or testing, you can do so by passing a query parameter named sixpack-force
to that page being tested.
http://example.com/?sixpack-force-<experiment name>=<alternative name>
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Added some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request