vwo/vwo-php-sdk
最新稳定版本:v1.70.1
Composer 安装命令:
composer require vwo/vwo-php-sdk
包简介
VWO server side sdk
README 文档
README
⚠️ This project is no longer actively developed. ⚠️
✅ We are only fixing critical bugs and security issues.
❌ No new features, enhancements, or non-critical updates will be added.
Switch to VWO Feature Management & Experimentation(FME) – The Better Alternative! ????
VWO’s FME product empowers teams to seamlessly test, release, optimize, and roll back features across their entire tech stack while minimizing risk and maximizing business impact.
???? Need Help? For migration assistance or any questions, contact us at support@vwo.com
This open source library provides you server-side testing capabilities.
Requirements
PHP >= 5.6
Installation
Install the latest version with
composer require vwo/vwo-php-sdk
Basic Usage
Use the below code for inital setup.
<?php require_once('vendor/autoload.php'); require_once('userStorage.php'); // Optional :if you are using UserStorage service feature require_once('customLogger.php');// Optional :if you are using custom logging feature use vwo\VWO; $accountId = REPLACE_WITH_VWO_ACCOUNT_ID; // eg: 123456 $sdkKey = 'REPLACE_WITH_TOKEN'; // eg: can be found in VWO app - FullStack project $campaignKey = 'CAMPAIGN_UNIQUE_TEST_KEY'; $userId = 'USER_ID'; $goalIdentifier = 'REPLACE_WITH_CAMPAIGN_GOAL_IDENTIFIER'; // to fetch the settings i.e campaigns, variations and goals $settingsFile = VWO::getSettingsFile($accountId, $sdkKey); $sdkConfig = [ 'settingsFile' => $settingsFile, 'isDevelopmentMode' => 0, // optional: 1 to enable the dev mode 'logging' => new CustomLogger(), // optional 'userStorageService' => new userStorageService() // optional ]; $vwoClient = new VWO($sdkConfig); // to get the variation name along with add a visitor hit to vwo app stats $variation = $vwoClient->activate($campaignKey, $userId, $options); // Or, to get the variation name $variation = $vwoClient->getVariationName($campaignKey, $userId, $options); // add code here to use variation //... /** *send the track api hit to the vwo app stats to increase conversions * $revenue is optional send in case if there is any revenue inside $options */ $vwoClient->track($campaignKey, $userId, $goalIdentifier, $options);
Code for implementing User Storage Service
<?php require_once('vendor/autoload.php'); use vwo\Utils\UserStorageInterface; Class UserStorage implements UserStorageInterface{ /** * @param $userId * @param $campaignKey * * @return array */ public function get($userId, $campaignKey) { // search in DB/Storage system $variation = $db->fetch($userId, $campaignKey); // replace with your implementation return[ 'userId' => $userId, 'campaignKey' => $campaignKey, 'variationName' => $variation ]; } /** * @param $campaignUserMapping * @return bool - could be changed */ public function set($campaignUserMapping) { // S...code to store in DB/storage system return True; } }
Code for implementing Custom Logger
<?php require_once('vendor/autoload.php'); use vwo\Logger\LoggerInterface; /** * Class CustomLogger */ Class CustomLogger implements LoggerInterface{ /** * @param $message * @param $level * * @return */ public function log($message, $level){ // use $level and log $message to either print or store them for later use } }
Documentation
Refer Official VWO Documentation
Third-party Resources and Credits
Refer third-party-attributions.txt
Changelog
Refer CHANGELOG.md
Development and Test Cases
- Set development environment
composer run-script start
- Run test cases
composer run-script test
- Run linter
composer run-script test
- Run code beautifier
composer run-script phpcbf
License
Copyright 2019-2022 Wingify Software Pvt. Ltd.
统计信息
- 总下载量: 155.63k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 12
- 点击次数: 3
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: Apache-2.0
- 更新时间: 未知