adback / adback-sdk-php
sdk php to call AdBack api
Installs: 10 985
Dependents: 1
Suggesters: 0
Security: 0
Stars: 0
Watchers: 3
Forks: 0
Open Issues: 0
README
This PHP library will call the AdBack API and will generate the JavaScript tag that should be placed on all the pages.
See the AdBack website for more informations.
See the AdBack documentation for an installation guide.
Usage
Both the Query
and Generators
will need a driver which implements
the ScriptCacheInterface
to work.
A driver for Redis is already available.
Usage Exemple
Installation
Use composer to install the lib :
composer require adback/adback-sdk-php
Usage with Redis
Query the api
First you need to query the api to warmup the cache in a Redis data store :
use Adback\ApiClient\Client\Client; use Adback\ApiClient\Driver\RedisScriptCache; use Adback\ApiClient\Query\ScriptUrlQuery; function createApiCache() { $client = new Client(); $redis = new \Redis(); $redis->connect('127.0.0.1'); $redisCache = new RedisScriptCache($redis); $query = new ScriptUrlQuery($client, $redisCache, 'your-token'); $query->execute(); } createApiCache();
Generate the scripts
In your page, preferably in the <head>
, use the generator to create the script :
use Adback\ApiClient\Driver\RedisScriptCache; use Adback\ApiClient\Generator\AnalyticsScriptGenerator; function generateAnalyticsScript() { $redis = new \Redis(); $redis->connect('127.0.0.1'); $redisCache = new RedisScriptCache($redis); $generator = new AnalyticsScriptGenerator($redisCache); return $generator->generate(); } echo generateAnalyticsScript();
You could do the same to create the other scripts by using the appropriate generators.
Usage with MySQL
Create the table
To create the table used to store the data in MySQL, run the query:
CREATE TABLE adback_cache_table(our_key varchar(255), our_value varchar(255));
With the PDO driver
Query the api
First you need to query the api to warmup the cache in a Mysql table :
use Adback\ApiClient\Client\Client; use Adback\ApiClient\Driver\PdoScriptCache; use Adback\ApiClient\Query\ScriptUrlQuery; function createApiCache() { $client = new Client(); $connection = new \PDO('mysql:host=your-database-host;dbname=your-database;charset=utf8', 'login', 'password'); $cache = new PdoScriptCache($connection); $query = new ScriptUrlQuery($client, $cache, 'your-token'); $query->execute(); } createApiCache();
Generate the scripts
In your page, preferably in the <head>
, use the generator to create the script :
use Adback\ApiClient\Generator\AnalyticsScriptGenerator; use Adback\ApiClient\Driver\PdoScriptCache; function generateAnalyticsScript() { $connection = new \PDO('mysql:host=your-database-host;dbname=your-database;charset=utf8', 'login', 'password'); $cache = new PdoScriptCache($connection); $generator = new AnalyticsScriptGenerator($cache); return $generator->generate(); } echo generateAnalyticsScript();
You could do the same to create the other scripts by using the appropriate generators.
With the Mysqli driver
Query the api
First you need to query the api to warmup the cache in a Mysql table :
use Adback\ApiClient\Client\Client; use Adback\ApiClient\Driver\MysqliScriptCache; use Adback\ApiClient\Query\ScriptUrlQuery; function createApiCache() { $client = new Client(); $connection = new \mysqli('your-database-host', 'login', 'password', 'your-database'); $cache = new MysqliScriptCache($connection); $query = new ScriptUrlQuery($client, $cache, 'your-token'); $query->execute(); } createApiCache();
Generate the scripts
In your page, preferably in the <head>
, use the generator to create the script :
use Adback\ApiClient\Generator\AnalyticsScriptGenerator; use Adback\ApiClient\Driver\PdoScriptCache; function generateAnalyticsScript() { $connection = new \mysqli('your-database-host', 'login', 'password', 'your-database'); $cache = new MysqliScriptCache($connection); $generator = new AnalyticsScriptGenerator($cache); return $generator->generate(); } echo generateAnalyticsScript();
You could do the same to create the other scripts by using the appropriate generators.
Usage with Full script save and Redis
Query the api
First you need to query the full script api to warmup the cache in a Redis data store :
use Adback\ApiClient\Client\Client; use Adback\ApiClient\Driver\RedisScriptCache; use Adback\ApiClient\Query\FullScriptQuery; function createApiCache() { $client = new Client(); $redis = new \Redis(); $redis->connect('127.0.0.1'); $redisCache = new RedisScriptCache($redis); $query = new FullScriptQuery($client, $redisCache, 'your-token'); $query->execute(); } createApiCache();
Generate the code
In your page, use the generator to create the code :
use Adback\ApiClient\Driver\RedisScriptCache; use Adback\ApiClient\Generator\AnalyticsCodeGenerator; function generateAnalyticsCode() { $redis = new \Redis(); $redis->connect('127.0.0.1'); $redisCache = new RedisScriptCache($redis); $generator = new AnalyticsCodeGenerator($redisCache); return $generator->generate(); } echo generateAnalyticsCode();
You could do the same to create the other scripts by using the appropriate generators.
Usage with Full script save and Redis with predis/predis
Query the api
First you need to query the full script api to warmup the cache in a Redis data store :
use Adback\ApiClient\Client\Client; use Adback\ApiClient\Driver\RedisScriptCache; use Adback\ApiClient\Query\FullScriptQuery; use Predis\Client as Predis; function createApiCache() { $client = new Client(); $redis = new \Predis('127.0.0.1'); $redisCache = new RedisScriptCache($redis); $query = new FullScriptQuery($client, $redisCache, 'your-token'); $query->execute(); } createApiCache();
Generate the code
In your page, use the generator to create the code :
use Adback\ApiClient\Driver\RedisScriptCache; use Adback\ApiClient\Generator\AnalyticsCodeGenerator; use Predis\Client as Predis; function generateAnalyticsCode() { $redis = new \Predis('127.0.0.1'); $redisCache = new RedisScriptCache($redis); $generator = new AnalyticsCodeGenerator($redisCache); return $generator->generate(); } echo generateAnalyticsCode();
You could do the same to create the other scripts by using the appropriate generators.