robclancy/db-connector

此软件包最新版本(dev-master)没有可用的许可证信息。

从 illuminate/database 分支出来,仅提供数据库连接的简单软件包

dev-master / 1.0.x-dev 2013-04-11 07:53 UTC

This package is auto-updated.

Last update: 2024-09-22 04:09:28 UTC


README

此软件包仅仅是 http://github.com/illuminate/database 的分支,仅提供连接器。

Build Status

安装

将以下内容添加到您的 composer.json 文件的 "require" 部分

	"robclancy/db-connector": "1.0.x"

基本用法

您需要一个配置数组,以下展示了可以使用的配置...

$config = array(

	'fetch' => PDO::FETCH_CLASS,

	// SQLite
	'database' => __DIR__.'/../database/production.sqlite',
	'prefix'   => '',

	// MySQL
	'host'      => 'localhost',
	'database'  => 'database',
	'username'  => 'root',
	'password'  => '',
	'charset'   => 'utf8',
	'collation' => 'utf8_unicode_ci',
	'prefix'    => '',

	// Postgres SQL
	'host'     => 'localhost',
	'database' => 'database',
	'username' => 'root',
	'password' => '',
	'charset'  => 'utf8',
	'prefix'   => '',
	'schema'   => 'public',

	// SQL Server
	'driver'   => 'sqlsrv',
	'host'     => 'localhost',
	'database' => 'database',
	'username' => 'root',
	'password' => '',
	'prefix'   => '',
);

然后进行连接...

$connector = new Robbo\DbConnector\MysqlConnector;

$pdo = $connector->connect($config);

为了使支持多种数据库类型的应用程序更加容易和灵活,您可以使用工厂方法进行连接。配置保持不变,但是您需要添加一个驱动。例如...

$config = array(
	'driver' 	=> 'mysql', // For other types this is 'pgsql', 'sqlite' or 'sqlsrv'
	
	'host'      => 'localhost',
	'database'  => 'database',
	'username'  => 'root',
	'password'  => '',
	'charset'   => 'utf8',
	'collation' => 'utf8_unicode_ci',
	'prefix'    => '',
);

然后这样使用工厂方法...

 
$connector = Robbo\DbConnector\Connector::create($config); // Instance of Robbo/DbConnector/MySqlConnector
$pdo = $connector->connect($config);

// You can also have the factory connect for you by passing true as the second parameter, so...
$pdo = Robbo\DbConnector\Connector::create($config, true);