1<?php
2require_once '../../MPLT.php';
3$timer = new MPLT();
4require_once '../../src/dalmp.php';
5# ------------------------------------------------------------------------------
6
7$user = getenv('MYSQL_USER') ?: 'root';
8$password = getenv('MYSQL_PASS') ?: '';
9$host = getenv('MYSQL_HOST') ?: '127.0.0.1';
10$port = getenv('MYSQL_HOST') ?: '3306';
11
12$db = new DALMP\Database("utf8://$user:$password@$host:$port/dalmp");
13
14/**
15 * use redis as cache engine
16 */
17$db->useCache(new DALMP\Cache(new DALMP\Cache\Redis('127.0.0.1', 6379)));
18
19$db->FetchMode('ASSOC');
20
21/**
22 * Cache for 5 minutes, group A
23 */
24$rs = $db->CachePGetAll(300,'SELECT * FROM Country WHERE Region = ?', 'Caribbean', 'group:A');
25echo count($rs), PHP_EOL;
26$timer->setMark('300');
27
28/**
29 * Cache for 1 day (86400 seconds), group B
30 */
31$rs = $db->CachePGetAll(86400, 'SELECT * FROM Country WHERE Continent = ?', 'Europe', 'group:B');
32echo count($rs), PHP_EOL;
33$timer->setMark('86400');
34
35/**
36 * Cache for 1 hour (default), group C
37 */
38$rs = $db->CachePGetAll('SELECT * FROM Country WHERE Population <= ?', 100000, 'group:C');
39echo count($rs), PHP_EOL;
40$timer->setMark('default');
41
42/**
43 * lazy connection test query DB only when needed
44 */
45$db->debug();
46$db->closeConnection();
47
48/**
49 * Cache for 5 minutes, group A
50 */
51$rs = $db->CachePGetAll('SELECT * FROM Country WHERE Region = ?', 'Caribbean');
52echo count($rs), PHP_EOL;
53$timer->setMark('lazy');
54
55/**
56 * flush only group A
57 */
58$db->CacheFlush('group:A');
59
60/**
61 * Cache for 5 minutes, group A
62 */
63$rs = $db->CachePGetAll(300,'SELECT * FROM Country WHERE Region = ?', 'Caribbean', 'group:A');
64echo count($rs), PHP_EOL;
65$timer->setMark('connect');
66
67# ------------------------------------------------------------------------------
68echo PHP_EOL, str_repeat('-', 80), PHP_EOL;
69$timer->printMarks();
70echo str_repeat('-', 80),PHP_EOL,'Time: ',$timer->getPageLoadTime(),' - Memory: ',$timer->getMemoryUsage(1),PHP_EOL,str_repeat('-', 80),PHP_EOL;
71