<?php

require dirname(__FILE__) . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'autoload.php';
use Doctrine\ORM\Tools\Console\ConsoleRunner;
//create database if not exists
$mysqlConfig = NwApi\Libraries\Config::getInstance('mysql');
$mysqli = new mysqli($mysqlConfig->host, $mysqlConfig->user, $mysqlConfig->password, '', $mysqlConfig->port);
if (!$mysqli->query('CREATE DATABASE IF NOT EXISTS ' . $mysqli->real_escape_string($mysqlConfig->database))) {
    throw new Exception('Unable to create database');
}
return ConsoleRunner::createHelperSet(NwApi\Di::getInstance()->em);
Пример #2
0
<?php

use Doctrine\ORM\Tools\Setup;
use Doctrine\ORM\EntityManager;
$mysqlConfig = NwApi\Libraries\Config::getInstance('mysql');
$di = NwApi\Di::getInstance();
$isDevMode = true;
$annotationConfig = Setup::createAnnotationMetadataConfiguration([$di->entitiesPath], $isDevMode, null, null, false);
if ($di->env === ENV_DEVELOPMENT) {
    $annotationConfig->setSQLLogger($di->sqlLogger);
}
return EntityManager::create(['driver' => 'mysqli', 'user' => $mysqlConfig->user, 'password' => $mysqlConfig->password, 'host' => $mysqlConfig->host, 'port' => $mysqlConfig->port, 'dbname' => $mysqlConfig->database, 'charset' => 'utf8mb4'], $annotationConfig);