1<?php
2
3require_once '../../src/dalmp.php';
4
5$di = new DALMP\DI();
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_PORT') ?: '3306';
11
12$ok = $di->database("utf8://$user:$password@$host:$port/dalmp");
13echo $ok;
14$ok->debug();
15
16$now = $ok->getOne('SELECT NOW()');
17echo $now,PHP_EOL;
18sleep(10);
19$now = $ok->getOne('SELECT NOW()');
20echo $now,PHP_EOL;
21sleep(10);
22$city = $ok->PgetAll('SELECT * FROM City WHERE name like ?', '%timor%');
23print_r($city);
24sleep(10);
25$now = $ok->getOne('SELECT NOW()');
26echo $now,PHP_EOL;
27
28echo 'ping: ';
29var_dump($ok->X()->ping());
30
31sleep(5);
32
33class teste
34{
35    public function __construct()
36    {
37        print_r(func_get_args());
38    }
39
40    public function foo()
41    {
42        echo __CLASS__ . __METHOD__;
43    }
44
45}
46
47$di->addObject('teste', new teste());
48
49$a = $di->teste();
50
51$a->foo();
52
53$di->addObject('test2', $di->share(function () {
54    return new teste();
55}));
56
57echo PHP_EOL;
58$b = $di->test2();
59$b->foo();
60
61echo PHP_EOL;
62$c = $di->test2();
63$c->foo();
64
65echo PHP_EOL;
66
67$d = $di->test2();
68$d->foo();
69