1. Go to this page and download the library: Download andreekeberg/abby library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
andreekeberg / abby example snippets
// Setup a new Token instance
$token = new Abby\Token();
// If we can't find an existing token cookie, generate one and set tracking cookie
if (!$token->getValue()) {
$token->generate()->setCookie();
}
// Setup a User instance
$user = new Abby\User();
// Associate the token with our user
$user->setToken($token);
// List of experiments associated with a tracking token
$data = [
[
'id' => 1,
'group' => 1,
'viewed' => true,
'converted' => false
]
];
// Loop through users existing experiments and add them to our user instance
foreach ($data as $item) {
// Setup experiment instance based on an existing experiment
$experiment = new Abby\Experiment([
'id' => $item['id']
]);
// Setup a group instance based on stored data
$group = new Abby\Group([
'type' => $item['group']
]);
// Add the experiment (including their group, and whether they have viewed and converted)
$user->addExperiment($experiment, $group, $item['viewed'], $item['converted']);
}
// Experiment data
$data = [
'id' => 2
];
// Make sure the experiment isn't already in the users list
if (!$user->hasExperiment($data['id'])) {
// Setup a new experiment instance
$experiment = new Abby\Experiment([
'id' => $data['id']
]);
// Assign the user to either control or variation in the experiment
$group = $user->assignGroup($experiment);
// Add the experiment (including assigned group) to our user instance
$user->addExperiment($experiment, $group);
}
// Getting updated user experiment list
$user->getExperiments();
// Store updated experiment list for our user
// Experiment data
$data = [
'id' => 1
];
// Record a view for the experiment in question
$user->setViewed($data['id']);
// If the user is part of the variation group
if ($user->inVariation($data['id'])) {
// Apply a custom class to an element, load a script, etc.
}
// Experiment data
$data = [
'id' => 1
];
// On a custom goal, check if user has viewed the experiment and define a conversion
if ($user->hasViewed($data['id'])) {
$user->setConverted($data['id']);
}
// Getting updated user experiment data
$user->getExperiments();
// Store updated data for our user
// Setup experiment instance with stored results
$experiment = new Abby\Experiment([
'groups' => [
[
'name' => 'Control',
'views' => 3000,
'conversions' => 300
],
[
'name' => 'Variation',
'views' => 3000,
'conversions' => 364
]
]
]);
// Retrieve the results
$result = $experiment->getResult();
// Get the winner
$winner = $result->getWinner();
/**
* Get whether we can be confident of the result (even if we haven't
* reached the minimum number of views for each variant)
*/
$confident = $result->isConfident();
/**
* Get the minimum sample size (number of views)
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.