taplytics / taplytics-php
Taplytics PHP SDK,用于快速进行A/B测试和功能标志
1.1.0
2019-04-05 17:41 UTC
Requires
- php: >=5.4.0
- ext-curl: *
- ext-json: *
- ext-mbstring: *
- apimatic/jsonmapper: ~1.3.0
- mashape/unirest-php: ~3.0.1
Requires (Dev)
- mockery/mockery: dev-master
- phpunit/phpunit: ^7
- squizlabs/php_codesniffer: ^2.7
This package is not auto-updated.
Last update: 2024-09-29 20:14:29 UTC
README
入门指南
Taplytics PHP SDK 允许在边缘交付服务器端实验、功能标志和功能。
如何构建
参考入门指南,将 Taplytics 集成到您的项目中。
初始化
API 客户端可以按照以下方式初始化。
$client = new TaplyticsLib\TaplyticsClient();
类参考
APIController
获取单例实例
可以通过 API 客户端访问 APIController
类的单例实例。
$client = $client->getClient();
createGetVariables
给定用户的全部变量及其值
function createGetVariables( $token, $userId, $body = null)
参数
示例用法
$token = 'token'; $userId = 'user_id'; $body = new Body(); $result = $client->createGetVariables($token, $userId, $body);
createGetVariationForExperiment
对于给定的实验,确定用户是否在实验中,以及所在变体
function createGetVariationForExperiment( $token, $userId, $experimentName, $body = null)
参数
示例用法
$token = 'token'; $userId = 'user_id'; $experimentName = 'experimentName'; $body = new Body(); $result = $client->createGetVariationForExperiment($token, $userId, $experimentName, $body);
createGetVariableValue
给定 Taplytics 动态变量的值。如果用户不在包含该变量的实验中,响应将是查询参数中提供的默认值。
function createGetVariableValue( $token, $userId, $varName, $defaultValue, $body = null)
参数
示例用法
$token = 'token'; $userId = 'user_id'; $varName = 'varName'; $defaultValue = 'defaultValue'; $body = new Body(); $result = $client->createGetVariableValue($token, $userId, $varName, $defaultValue, $body);
createGetBucketing
返回用户被分割的所有实验的关键值对,以及分配给用户的变体。
function createGetBucketing( $token, $userId, $body = null)
参数
示例用法
$token = 'token'; $userId = 'user_id'; $body = new Body(); $result = $client->createGetBucketing($token, $userId, $body);
postEvent
向 Taplytics 发送事件。这些事件随后用于与实验目标进行比较,以确定 A/B 测试的成功。
function postEvent( $token, $userId, $body = null)
参数
示例用法
$token = 'token'; $userId = 'user_id'; $body = array( 'events' => array( array('eventName' => 'event name!', 'eventValue' => 5) ) ); $result = $client->postEvent($token, $userId, $body);
传递事件的格式如下
{
attributes: {
name: '',
...
},
events: [
{eventName: '', eventValue},
...
]
}
createGetConfig
返回项目的完整配置。这是告知实验信息(如分割)的文档。非常详细,应用于调试。
function createGetConfig( $token, $userId, $body = null)
参数
示例用法
$token = 'token'; $userId = 'user_id'; $body = new Body(); $result = $client->createGetConfig($token, $userId, $body);
createGetFeatureFlags
返回具有名称和键名的功能标志列表。
function createGetFeatureFlags( $token, $userId, $body = null)
参数
示例用法
$token = 'token'; $userId = 'user_id'; $body = new Body(); $result = $client->createGetFeatureFlags($token, $userId, $body); foreach($result as $flagObj) { // $flagObj->name to get the name of the feature flag // $flagObj->keyName to get the key of the feature flag }
isFeatureFlagEnabled
根据传递的键名是否是启用的功能标志,返回 true 或 false。
function isFeatureFlagEnabled( $token, $userId, $keyName, $body = null)
参数
示例用法
$token = 'token'; $userId = 'user_id'; $keyName = 'featureFlagKey'; $body = new Body(); $result = $client->isFeatureFlagEnabled($token, $userId, $keyName, $body); if ($result) { showFeature(); }