コード例 #1
0
ファイル: DBManager.php プロジェクト: hieu-pv/NFWP
 private function __construct()
 {
     $this->capsule = new Capsule();
     $this->capsule->addConnection(['driver' => 'mysql', 'host' => DB_HOST, 'database' => DB_NAME, 'username' => DB_USER, 'password' => DB_PASSWORD, 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '']);
     $this->capsule->setEventDispatcher(new Dispatcher(new Container()));
     $this->capsule->setAsGlobal();
 }
コード例 #2
0
 /**
  * {@inheritdoc}
  */
 public function bootstrap($app)
 {
     $this->capsule = new Manager();
     $this->capsule->addConnection(['driver' => $this->driver, 'host' => $this->host, 'database' => $this->database, 'username' => $this->username, 'password' => $this->password, 'charset' => $this->charset, 'collation' => $this->collation, 'prefix' => $this->prefix]);
     $this->capsule->setEventDispatcher(new Dispatcher(new Container()));
     $this->capsule->setAsGlobal();
     $this->capsule->bootEloquent();
     $app->set('db', $this->capsule);
 }
コード例 #3
0
ファイル: user.php プロジェクト: raynaldmo/php-education
 public function __construct()
 {
     $capsule = new Capsule();
     $capsule->addConnection(["driver" => "mysql", "host" => "localhost", "database" => "development", "username" => "developer", "password" => "developer", "charset" => "utf8", "collation" => "utf8_general_ci", "prefix" => ""]);
     $capsule->setEventDispatcher(new Dispatcher(new Container()));
     $capsule->bootEloquent();
 }
コード例 #4
0
ファイル: posts.php プロジェクト: matteo-hertel/archive
 public function __construct()
 {
     $capsule = new Capsule();
     $capsule->addConnection(['driver' => 'mysql', 'host' => 'localhost', 'database' => 'designpatternscourse', 'username' => 'homestead', 'password' => 'secret', 'charset' => 'utf8', 'collation' => 'utf8_general_ci', 'prefix' => '']);
     $capsule->setEventDispatcher(new Dispatcher(new Container()));
     $capsule->bootEloquent();
 }
コード例 #5
0
 public function register(Application $app)
 {
     $app['db'] = $app->share(function () use($app) {
         $capsule = new Capsule();
         if (!isset($app['i_db.config'])) {
             throw new \InvalidArgumentException('i_db.config is required.');
         }
         $db['config'] = $app['i_db.config'];
         if (!is_array($db)) {
             throw new \InvalidArgumentException('$app[\'i_db.config\'] must is array;');
         }
         $capsule->addConnection($db['config']);
         $db['i_db.event_dispatcher'] = isset($app['i_db.event_dispatcher']) ? $app['i_db.event_dispatcher'] : true;
         $db['i_db.global'] = isset($app['i_db.global']) ? $app['i_db.global'] : true;
         $db['i_db.boot_eloquent'] = isset($app['i_db.boot_eloquent']) ? $app['i_db.boot_eloquent'] : true;
         if ($db['i_db.event_dispatcher']) {
             $capsule->setEventDispatcher(new Dispatcher(new Container()));
         }
         if ($db['i_db.global']) {
             $capsule->setAsGlobal();
         }
         if ($db['i_db.event_dispatcher'] or $db['i_db.boot_eloquent']) {
             $capsule->bootEloquent();
         }
         return $capsule;
     });
 }
コード例 #6
0
 /**
  * Register the service provider.
  */
 public function register()
 {
     $manager = new Manager();
     $manager->addConnection($this->app->config->get('database')['default']);
     $manager->setEventDispatcher(new Dispatcher());
     $manager->setAsGlobal();
     $manager->bootEloquent();
 }
コード例 #7
0
ファイル: db.php プロジェクト: roohbakhshmasoud/location
 public static function prepareDatabase()
 {
     $capsule = new Capsule();
     $capsule->addConnection(['driver' => 'mysql', 'host' => 'localhost', 'database' => 'geo', 'username' => 'root', 'password' => 'iGlL]m1B', 'charset' => 'utf8', 'collation' => 'utf8_general_ci', 'prefix' => '']);
     $capsule->setEventDispatcher(new Dispatcher(new Container()));
     $capsule->setAsGlobal();
     $capsule->bootEloquent();
 }
コード例 #8
0
ファイル: UuidTraitTest.php プロジェクト: iolson/support
 /**
  * Configure in memory database.
  */
 protected function configureDatabase()
 {
     $db = new DB();
     $db->addConnection(array('driver' => 'sqlite', 'database' => ':memory:', 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => ''));
     $db->setEventDispatcher(new Dispatcher(new Container()));
     $db->bootEloquent();
     $db->setAsGlobal();
 }
コード例 #9
0
ファイル: Core.php プロジェクト: loganhenson/core
 public static function connectToDatabase($hostname, $database, $username, $password)
 {
     $capsule = new Capsule();
     $capsule->addConnection(['driver' => 'mysql', 'host' => $hostname, 'database' => $database, 'username' => $username, 'password' => $password, 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '']);
     $capsule->setEventDispatcher(new Dispatcher(new Container()));
     $capsule->setAsGlobal();
     $capsule->bootEloquent();
 }
コード例 #10
0
ファイル: Api.php プロジェクト: mastermindg/api-sugar
 public function configureDB(array $options)
 {
     $capsule = new Capsule();
     $capsule->addConnection($options);
     $capsule->setEventDispatcher(new Dispatcher(new Container()));
     $capsule->setAsGlobal();
     $capsule->bootEloquent();
     $this->dbConnected = true;
 }
コード例 #11
0
ファイル: model.php プロジェクト: kisshc/frame
 public function __construct()
 {
     $capsule = new Capsule();
     $config = C("db");
     $capsule->addConnection(['driver' => $config['type'], 'host' => $config['host'], 'database' => $config['database'], 'username' => $config['username'], 'password' => $config['password'], 'charset' => $config['charset'], 'collation' => $config['collation'], 'prefix' => $config['prefix']]);
     $capsule->setEventDispatcher(new Dispatcher(new Container()));
     $capsule->setAsGlobal();
     $capsule->bootEloquent();
 }
コード例 #12
0
ファイル: DataTest.php プロジェクト: jvelo/datoum
 public static function setUpBeforeClass()
 {
     parent::setUpBeforeClass();
     $capsule = new Capsule();
     $capsule->addConnection(['driver' => 'pgsql', 'host' => 'localhost', 'database' => 'datoum', 'username' => 'jerome', 'password' => '', 'charset' => 'utf8', 'prefix' => '', 'schema' => 'public']);
     $capsule->setEventDispatcher(new Dispatcher(new Container()));
     $capsule->setAsGlobal();
     $capsule->bootEloquent();
 }
コード例 #13
0
 protected function initDb(Capsule $capsule)
 {
     global $dbCreds;
     $capsule->addConnection($dbCreds);
     $capsule->setEventDispatcher(new Dispatcher());
     $capsule->setAsGlobal();
     $capsule->bootEloquent();
     return $capsule;
 }
コード例 #14
0
 /**
  * Setup all the illuminate magic 
  * 
  * @return $this
  */
 public function setup()
 {
     $capsule = new Capsule();
     $capsule->addConnection(['driver' => 'mysql', 'host' => getenv('mysql.hostname'), 'database' => getenv('mysql.database'), 'username' => getenv('mysql.username'), 'password' => getenv('mysql.password'), 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '']);
     $capsule->setEventDispatcher(new Dispatcher(new Container()));
     $capsule->setAsGlobal();
     $capsule->bootEloquent();
     return $this;
 }
コード例 #15
0
ファイル: DBConfig.php プロジェクト: mastermindg/api-sugar
 public static function addConnection()
 {
     $capsule = new Capsule();
     $capsule->addConnection(['driver' => 'pgsql', 'host' => 'localhost', 'database' => 'instaclone', 'username' => 'postgres', 'password' => 'pass', 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '']);
     // Set the event dispatcher used by Eloquent models... (optional)
     $capsule->setEventDispatcher(new Dispatcher(new Container()));
     // Make this Capsule instance available globally via static methods... (optional)
     $capsule->setAsGlobal();
     // Setup the Eloquent ORM... (optional; unless you've used setEventDispatcher())
     $capsule->bootEloquent();
 }
コード例 #16
0
ファイル: Database.php プロジェクト: creativeduo/thin
 /**
  * Setup the database service.
  *
  * @param \Slim\Slim $app The application instance.
  */
 public static function setup(Slim $app)
 {
     $manager = new Manager();
     $manager->addConnection(['driver' => $app->config('db.driver'), 'host' => $app->config('db.host'), 'database' => $app->config('db.database'), 'username' => $app->config('db.username'), 'password' => $app->config('db.password'), 'charset' => $app->config('db.charset'), 'collation' => $app->config('db.collation'), 'prefix' => $app->config('db.prefix')]);
     $manager->setEventDispatcher(new Dispatcher(new Container()));
     $manager->setAsGlobal();
     $manager->bootEloquent();
     // Setting database connection to use the same time zone as
     // application.
     $manager->getConnection()->statement('SET time_zone = ?', [Carbon::now()->offsetHours . ':00']);
     $app->database = $manager;
 }
コード例 #17
0
 public function initialization()
 {
     $capsule = new Manager();
     $capsule->addConnection(['driver' => $_ENV['driver'], 'host' => $_ENV['host'], 'database' => $_ENV['database'], 'username' => $_ENV['username'], 'password' => $_ENV['password'], 'port' => $_ENV['port'], 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '']);
     // Set the event dispatcher used by Eloquent models... (optional)
     $capsule->setEventDispatcher(new Dispatcher(new Container()));
     // Make this Capsule instance available globally via static methods... (optional)
     $capsule->setAsGlobal();
     // Setup the Eloquent ORM... (optional; unless you've used setEventDispatcher())
     $capsule->bootEloquent();
     $this->capsule = $capsule;
 }
コード例 #18
0
 public static function init()
 {
     $capsule = null;
     if (is_null(self::$conn)) {
         $capsule = new Capsule();
         $capsule->addConnection(['driver' => 'mysql', 'host' => DB_HOSTNAME, 'database' => DB_DATABASE, 'username' => DB_USERNAME, 'password' => DB_PASSWORD, 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => DB_PREFIX]);
         $capsule->setEventDispatcher(new Dispatcher(new Container()));
         $capsule->setAsGlobal();
         $capsule->bootEloquent();
     }
     return $capsule;
 }
コード例 #19
0
 protected static function facadeInstance()
 {
     static $instance;
     if (!isset($instance)) {
         $container = new Container();
         $instance = new Manager($container);
         $instance->setEventDispatcher(new Dispatcher($container));
         $instance->setAsGlobal();
         $instance->addConnection(['driver' => 'mysql', 'host' => \DB_HOST, 'database' => \DB_NAME, 'username' => \DB_USER, 'password' => \DB_PASSWORD, 'charset' => \DB_CHARSET, 'collation' => !defined('\\DB_COLLATE') || empty(\DB_COLLATE) ? 'utf8_unicode_ci' : \DB_COLLATE, 'prefix' => $GLOBALS['table_prefix']]);
     }
     return $instance;
 }
コード例 #20
0
ファイル: SettingsTest.php プロジェクト: hilmysyarif/sic
 private function initDb()
 {
     $capsule = new Capsule();
     $capsule->addConnection(['driver' => 'sqlite', 'host' => 'localhost', 'database' => ':memory:', 'prefix' => '']);
     $capsule->setEventDispatcher(new Dispatcher(new Container()));
     $capsule->setAsGlobal();
     $capsule->bootEloquent();
     Capsule::schema()->create('settings', function ($table) {
         $table->string('key', 100)->index()->unique('key');
         $table->text('value', 65535)->nullable();
     });
     return $capsule->getDatabaseManager();
 }
コード例 #21
0
ファイル: Bootstrap.php プロジェクト: sean0402/yarf-framework
 public function _initEntity()
 {
     $sysConfig = Yaf_Registry::get("sysConfig");
     $capsule = new Capsule();
     foreach ($sysConfig['mysql'] as $name => $dbParam) {
         $capsule->addConnection($dbParam, $name);
     }
     // Set the event dispatcher used by Eloquent models... (optional)
     $capsule->setEventDispatcher(new Dispatcher(new Container()));
     // // Make this Capsule instance available globally via static methods... (optional)
     $capsule->setAsGlobal();
     // // Setup the Eloquent ORM... (optional; unless you've used setEventDispatcher())
     $capsule->bootEloquent();
 }
コード例 #22
0
 /**
  * Register the Illuminate Database service
  *
  * @param Silex\Application $app
  */
 public function register(Application $app)
 {
     $app['database'] = $app->share(function () use($app) {
         $capsule = new Capsule();
         $capsule->addConnection($app['database.connection']);
         $capsule->setEventDispatcher(new Dispatcher(new Container()));
         if (isset($app['database.connection']['logging']) && $app['database.connection']['logging'] === true) {
             $capsule->getConnection()->enableQueryLog();
         }
         $capsule->setAsGlobal();
         $capsule->bootEloquent();
         return $capsule;
     });
 }
コード例 #23
0
 /**
  * Boot Eloquent ORM
  */
 public function __construct($parameters, \Nextras\TracyQueryPanel\QueryPanel $queryPanel)
 {
     $this->queryPanel = $queryPanel;
     $capsule = new Capsule();
     $capsule->addConnection($parameters);
     $capsule->setAsGlobal();
     $capsule->bootEloquent();
     $events = new Illuminate\Events\Dispatcher();
     $events->listen('illuminate.query', function ($query, $bindings, $time, $name) {
         \Nextras\TracyQueryPanel\Handlers\EloquentHandler::register($this->queryPanel, $query, $bindings, $time, $name);
     });
     $capsule->setEventDispatcher($events);
     return $capsule;
 }
コード例 #24
0
ファイル: Encapsulator.php プロジェクト: donggegithub/Torch
 /**
  * Initialize capsule and store reference to connection
  */
 public static function init()
 {
     if (is_null(self::$conn)) {
         $capsule = new Capsule();
         $capsule->addConnection(['driver' => 'mysql', 'host' => 'localhost', 'database' => 'illuminate_non_laravel', 'username' => 'root', 'password' => '', 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '']);
         $capsule->setEventDispatcher(new Dispatcher(new Container()));
         // Set the cache manager instance used by connections... (optional)
         // $capsule->setCacheManager(...);
         // Make this Capsule instance available globally via static methods... (optional)
         $capsule->setAsGlobal();
         // Setup the Eloquent ORM... (optional; unless you've used setEventDispatcher())
         $capsule->bootEloquent();
     }
 }
コード例 #25
0
ファイル: Kernel.php プロジェクト: chellem/symslim
 protected function registerORM()
 {
     $this->slim->container->singleton('capsule', function () {
         $config = self::getConfig('parameters');
         $capsule = new Capsule();
         $capsule->addConnection($config['parameters']);
         $capsule->setEventDispatcher(new Dispatcher(new Container()));
         $capsule->bootEloquent();
         $capsule->setAsGlobal();
         return $capsule;
     });
     $this->slim->container->get('capsule');
     return $this;
 }
コード例 #26
0
ファイル: Database.php プロジェクト: minutephp/framework
 /**
  * Start up eloquent
  *
  * @param array|null $credentials
  *
  * @return \Illuminate\Database\Connection|null
  */
 public function connect(array $credentials = null)
 {
     if ($credentials = $credentials ?? $this->getDsn()) {
         $this->capsule->getDatabaseManager()->purge($this->capsule->getDatabaseManager()->getDefaultConnection());
         $this->capsule->addConnection(array_merge(['driver' => 'mysql', 'host' => 'localhost', 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => ''], $credentials));
         $this->capsule->setEventDispatcher($this->dispatcher);
         $this->capsule->setAsGlobal();
         $this->capsule->bootEloquent();
         $this->connection = $this->capsule->getConnection();
         $this->connection->enableQueryLog();
         return $this->connection;
     }
     return null;
 }
コード例 #27
0
 public function initPlugin()
 {
     $this->app[$this->getPluginName()] = function ($app) {
         $config = $app->config('persistence.database.capsule');
         $capsule = new Manager();
         foreach ($config as $key => $value) {
             $capsule->addConnection($value, $key);
         }
         $capsule->setEventDispatcher(new Dispatcher(new Container()));
         $capsule->setAsGlobal();
         $capsule->bootEloquent();
         $app->event()->emit('plugin.capsule.after', [$app, $capsule]);
         return $capsule;
     };
 }
コード例 #28
0
 /**
  * Register database services
  * 
  * @param  PimpleContainer $di Container
  */
 public function register(PimpleContainer $di)
 {
     $params = $this->databaseParams;
     $di['dbConnection'] = function () use($params, $di) {
         $capsule = $di['db'];
         return $capsule->getConnection();
     };
     $di['dbConnectionResolver'] = function () use($params, $di) {
         $connection = $di['dbConnection'];
         $resolver = new ConnectionResolver(['default' => $connection]);
         $resolver->setDefaultConnection('default');
         return $resolver;
     };
     $di['dbMigrationRepository'] = function () use($params, $di) {
         $resolver = $di['dbConnectionResolver'];
         $repository = new DatabaseMigrationRepository($resolver, 'migrations');
         return $repository;
     };
     $di['dbMigrator'] = function () use($params, $di) {
         class_alias(Schema::class, 'Schema');
         Schema::setContainer($di);
         $resolver = $di['dbConnectionResolver'];
         $repository = $di['dbMigrationRepository'];
         $filesystem = new Filesystem();
         $migrator = new Migrator($repository, $resolver, $filesystem);
         return $migrator;
     };
     $di['db'] = function () use($params, $di) {
         class_alias(DB::class, 'DB');
         DB::setContainer($di);
         $capsule = new Capsule();
         $capsule->setEventDispatcher(new Dispatcher(new Container()));
         $capsule->setAsGlobal();
         $capsule->bootEloquent();
         $capsule->addConnection($params);
         if (class_exists(MongoDbConnection::class)) {
             $capsule->getDatabaseManager()->extend('mongodb', function ($config) {
                 return new MongoDbConnection($config);
             });
         }
         return $capsule;
     };
     $di['dbManager'] = function () use($params, $di) {
         $dbCapsule = $di['db'];
         return $dbCapsule->getDatabaseManager();
     };
     $di['db'];
 }
 /**
  * Register the Illuminate Database service
  *
  * @param Silex\Application
  */
 public function register(Application $app)
 {
     $app['db.connection_defaults'] = array('driver' => 'mysql', 'host' => 'localhost', 'database' => 'test', 'username' => 'root', 'password' => 'root', 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => null);
     $app['db.boot'] = true;
     $app['db.global'] = true;
     $app['db.container'] = $app->share(function () {
         return new Container();
     });
     $app['db.dispatcher'] = $app->share(function () use($app) {
         return new Dispatcher($app['db.container']);
     });
     if (class_exists('\\Illuminate\\Cache\\CacheManager')) {
         $app['db.cache_manager'] = $app->share(function () use($app) {
             return new \Illuminate\Cache\CacheManager($app['db.container']);
         });
     }
     $app['db.cache'] = array('driver' => 'apc', 'prefix' => 'laravel');
     $app['db'] = $app->share(function () use($app) {
         $db = new Capsule($app['db.container']);
         $db->setEventDispatcher($app['db.dispatcher']);
         if (isset($app['db.cache_manager']) && isset($app['db.cache'])) {
             $db->setCacheManager($app['db.cache_manager']);
             foreach ($app['db.cache'] as $key => $value) {
                 $app['db.container']->offsetGet('config')->offsetSet('cache.' . $key, $value);
             }
         }
         if ($app['db.global']) {
             $db->setAsGlobal();
         }
         if ($app['db.boot']) {
             $db->bootEloquent();
         }
         if (!isset($app['db.connections'])) {
             $connection = array();
             if (isset($app['db.connection'])) {
                 $connection = $app['db.connection'];
             }
             $app['db.connections'] = array('default' => $connection);
         }
         foreach ($app['db.connections'] as $connection => $options) {
             $db->addConnection(array_replace($app['db.connection_defaults'], $options), $connection);
         }
         if (!$app['debug']) {
             $db->connection()->disableQueryLog();
         }
         return $db;
     });
 }
コード例 #30
0
 /**
  * Register the Capsule service.
  *
  * @param Application $app
  **/
 public function register(Application $app)
 {
     $app['capsule.connection_defaults'] = array('driver' => 'mysql', 'host' => 'localhost', 'database' => null, 'username' => 'root', 'password' => null, 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => null, 'logging' => false);
     $app['capsule.global'] = true;
     $app['capsule.eloquent'] = true;
     $app['capsule.container'] = $app->share(function () {
         return new Container();
     });
     $app['capsule.dispatcher'] = $app->share(function () use($app) {
         return new Dispatcher($app['capsule.container']);
     });
     if (class_exists('Illuminate\\Cache\\CacheManager')) {
         $app['capsule.cache_manager'] = $app->share(function () use($app) {
             return new CacheManager($app['capsule.container']);
         });
     }
     $app['capsule'] = $app->share(function ($name) use($app) {
         $capsule = new Capsule($app['capsule.container']);
         $capsule->setEventDispatcher($app['capsule.dispatcher']);
         if (isset($app['capsule.cache_manager']) && isset($app['capsule.cache'])) {
             $capsule->setCacheManager($app['capsule.cache_manager']);
             foreach ($app['capsule.cache'] as $key => $value) {
                 $app['capsule.container']->offsetGet('config')->offsetSet('cache.' . $key, $value);
             }
         }
         if ($app['capsule.global']) {
             $capsule->setAsGlobal();
         }
         if ($app['capsule.eloquent']) {
             $capsule->bootEloquent();
         }
         if (!isset($app['capsule.connections'])) {
             $app['capsule.connections'] = array('default' => isset($app['capsule.connection']) ? $app['capsule.connection'] : array());
         }
         foreach ($app['capsule.connections'] as $connection => $options) {
             $options = array_replace($app['capsule.connection_defaults'], $options);
             $logging = $options['logging'];
             unset($options['logging']);
             $capsule->addConnection($options, $connection);
             if ($logging) {
                 $capsule->connection($connection)->enableQueryLog();
             } else {
                 $capsule->connection($connection)->disableQueryLog();
             }
         }
         return $capsule;
     });
 }