26 lines
1.4 KiB
PHP
26 lines
1.4 KiB
PHP
<?php
|
|
use Psr\Container\ContainerInterface;
|
|
|
|
return [
|
|
ProVM\Concept\Database::class => function(ContainerInterface $container) {
|
|
return (new ProVM\Database\MySQL())
|
|
->setHost($container->get('DB_HOST'))
|
|
->setName($container->get('DB_DATABASE'))
|
|
->setUser($container->get('DB_USER'))
|
|
->setPassword($container->get('DB_PASSWORD'));
|
|
},
|
|
ProVM\Concept\Database\Connection::class => function(ContainerInterface $container) {
|
|
return new ProVM\Database\Connection($container->get(ProVM\Concept\Database::class));
|
|
},
|
|
ProVM\Concept\Database\Query\Builder::class => function(ContainerInterface $container) {
|
|
return new ProVM\Database\Query\Builder([
|
|
ProVM\Concept\Database\Query\Select::class => ProVM\Database\Query\MySQL\Select::class,
|
|
ProVM\Concept\Database\Query\Insert::class => ProVM\Database\Query\MySQL\Insert::class,
|
|
ProVM\Concept\Database\Query\Update::class => ProVM\Database\Query\MySQL\Update::class,
|
|
ProVM\Concept\Database\Query\Delete::class => ProVM\Database\Query\MySQL\Delete::class,
|
|
ProVM\Concept\Database\Query\Create::class => ProVM\Database\Query\MySQL\Create::class,
|
|
ProVM\Concept\Database\Query\Drop::class => ProVM\Database\Query\MySQL\Drop::class,
|
|
ProVM\Concept\Database\Query\Truncate::class => ProVM\Database\Query\MySQL\Truncate::class,
|
|
]);
|
|
}
|
|
]; |