dev-master
9999999-dev https://github.com/nanaksr/dbconnA simple pdo mysql config for multiple database
MIT
The Requires
- php ^5.3.3 || ^7.0
database pdo slim
A simple pdo mysql config for multiple database
PDO mysql Connection for Slim 3 framework., (*1)
Via composer:, (*2)
composer require nanaksr/dbconn
Create an array of session settings in you application settings., (*3)
$settings = [ 'settings' => [ 'listdb' => [ 'db1' => [ 'dsn' => 'mysql:host=localhost;dbname=nama_name;charset=utf8', 'user' => 'root', 'pass' => 'yourpassword' ], 'db2' => [ 'dsn' => 'mysql:host=localhost;dbname=nama_name;charset=utf8', 'user' => 'root', 'pass' => 'yourpassword' ] ] ] ];
You can inject session helper class in application container:, (*4)
$c['dbConn'] = function($c){ return new \nanaksr\dbconn($c->get('settings')['listdb']); };
if dbcon class is injected in application container and can be used as an object, i.e. like this:, (*5)
$app->get('/', function (Request $request, Response $response) { // Namespace is now picked up from settings $db1 = $this->dbconn->pdo('db1'); $data = $db1->prepare("SELECT * FROM `mytable`"); $data->execute(); return print_r($data->fetchAll()); });
with container resolution:, (*6)
class Home { protected $ci; public function __construct($ci) { $dbConn = $ci->get('dbConn'); $this->db1 = $dbConn->pdo('db1'); } public function __invoke(Request $request, Response $response, $args) { $data = $this->db1->prepare("SELECT * FROM `mytable`"); $data->execute(); return print_r($data->fetchAll()); } }
A simple pdo mysql config for multiple database
MIT
database pdo slim