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