jippi/sixpack-php

此包已被废弃且不再维护。未建议替代包。

Sixpack A/B测试框架客户端

v1.0.2 2014-01-14 14:19 UTC

This package is auto-updated.

Last update: 2024-06-14 05:56:03 UTC


README

Latest Stable Version

Sixpack

SeatGeek的Sixpack ab测试框架的PHP客户端库。

安装

简单克隆项目,并将sixpack.php包含到您的PHP项目中

使用

所有这些都已经过时

基本示例

默认情况下,PHP客户端通过用户的cookie存储唯一的客户端id。

$sp = new \Seatgeek\Sixpack\Session;
$alt = $sp->participate('test', array('blue', 'red'))->getAlternative();
if ($alt == 'blue') {
    /* do something blue */
} else {
    /* do somethign red */
}

每个会话都与一个client_id相关联,必须在请求之间保持。PHP客户端自动处理此操作。如果您想改变这种行为,可以这样做

$sp = new \Seatgeek\Sixpack\Session;
$resp = $sp->participate("new-test", array("alternative-1", "alternative-2"));
store_in_database("sixpack-id", $resp->getClientId());

对于未来的请求,使用存储在cookie中的client_id创建Session

$client_id = get_from_database("sixpack-id")
$sp = new \Seatgeek\Sixpack\Session(array('clientId' => $client_id));

$sp->convert('new-test');

Session构造函数的其他可能选项

  • baseUrl - Sixpack服务器的网络位置
  • cookiePrefix - 您可以设置不同的cookie前缀。默认为sixpack

如果您想强制Sixpack服务器在开发或测试时返回特定的替代方案,可以通过向测试页面传递名为sixpack-force的查询参数来实现。

http://example.com/?sixpack-force-<实验名称>=<替代名称>

贡献

  1. 分支
  2. 创建您的功能分支(git checkout -b my-new-feature
  3. 提交您的更改(git commit -am 'Added some feature'
  4. 推送到分支(git push origin my-new-feature
  5. 创建新的Pull Request