Example #1
0
<?php

require_once __DIR__ . '/../../vendor/autoload.php';
$stats = \JLaso\SimpleStats\Stats::getInstance();
$scatterGraph = new \JLaso\SimpleStats\Graph\Scatter();
$barGraph = new \JLaso\SimpleStats\Graph\Bar();
?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>Example of Simple Stats</h1>
<div>
    <?php 
$scatterGraph->draw('Example scatter', 'clicks,ips', array(0, 99999999999), 600, 480);
?>
</div>
<div>
    <a href="../click.php?data=click_link&redirect=plain-php/<?php 
echo basename(__FILE__);
?>
">Click</a>
    <span>&nbsp;count [<?php 
echo $stats->getCountByData('ips', $stats->getUserIP());
?>
]</span>
</div>
<div>
Example #2
0
require_once __DIR__ . '/../../vendor/autoload.php';
define("CACHE_DIR", __DIR__ . '/cache');
// in order to check live changes
exec('rm -rf ' . CACHE_DIR . '/*');
$loader = new Twig_Loader_Filesystem(__DIR__);
$twig = new Twig_Environment($loader, array('cache' => CACHE_DIR));
// TWIG FUNCTIONS TO HANDLE STATS GRAPHICS SIMPLY
$twig->addFunction(new Twig_SimpleFunction('statsGraph', function ($graphName, $title, $event, $range, $width, $height) {
    $graph = null;
    switch (strtolower(trim($graphName))) {
        case 'scatter':
            $graph = new \JLaso\SimpleStats\Graph\Scatter();
            break;
        case 'bar':
            $graph = new \JLaso\SimpleStats\Graph\Bar();
            break;
        default:
            return "Graph {$graph} not recognized in statsGraph twig function";
    }
    $file = uniqid($graphName . '-') . '.svg';
    $graph->draw($title, $event, $range, $width, $height, CACHE_DIR . '/' . $file);
    return '<img src="cache/' . $file . '" alt="' . $title . '">';
}, array('pre_escape' => 'html', 'is_safe' => array('html'))));
$twig->addFunction(new Twig_SimpleFunction('statsCount', function ($event, $data) {
    return \JLaso\SimpleStats\Stats::getInstance()->getCountByData($event, $data);
}));
$twig->addFunction(new Twig_SimpleFunction('userIP', function () {
    return \JLaso\SimpleStats\Stats::getInstance()->getUserIP();
}));
$twig->addFunction(new Twig_SimpleFunction('home', function () {