Cleaning up code.
Signed-off-by: Taylor Otwell <taylorotwell@gmail.com>
This commit is contained in:
parent
8c209a7a61
commit
68b4e55336
|
@ -22,6 +22,9 @@ public function connect($config)
|
||||||
$dsn .= ";port={$config['port']}";
|
$dsn .= ";port={$config['port']}";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// The UNIX socket option allows the developer to indicate that the MySQL
|
||||||
|
// instance must be connected to via a given socket. We'll just append
|
||||||
|
// it to the DSN connection string if it is present.
|
||||||
if (isset($config['unix_socket']))
|
if (isset($config['unix_socket']))
|
||||||
{
|
{
|
||||||
$dsn .= ";unix_socket={$config['unix_socket']}";
|
$dsn .= ";unix_socket={$config['unix_socket']}";
|
||||||
|
|
|
@ -12,18 +12,29 @@ public function connect($config)
|
||||||
{
|
{
|
||||||
$options = $this->options($config);
|
$options = $this->options($config);
|
||||||
|
|
||||||
// SQLite provides supported for "in-memory" databases, which exist only for the
|
// SQLite provides supported for "in-memory" databases, which exist only for
|
||||||
// lifetime of the request. Any given in-memory database may only have one PDO
|
// lifetime of the request. Any given in-memory database may only have one
|
||||||
// connection open to it at a time. These are usually for testing.
|
// PDO connection open to it at a time. These are mainly for tests.
|
||||||
if ($config['database'] == ':memory:')
|
if ($config['database'] == ':memory:')
|
||||||
{
|
{
|
||||||
return new PDO('sqlite::memory:', null, null, $options);
|
return new PDO('sqlite::memory:', null, null, $options);
|
||||||
}
|
}
|
||||||
|
|
||||||
// SQLite databases will be created automatically if they do not exist, so we
|
// We'll allow the "database" configuration option to be a fully qualified
|
||||||
// will not check for the existence of the database file before establishing
|
// path to the database so we'll check if that is the case first. If it
|
||||||
// the PDO connection to the database.
|
// isn't a fully qualified path we will use the storage directory.
|
||||||
|
if (file_exists($config['database']))
|
||||||
|
{
|
||||||
|
$path = $config['database'];
|
||||||
|
}
|
||||||
|
|
||||||
|
// The database option does not appear to be a fully qualified path so we
|
||||||
|
// will just assume it is a relative path from the storage directory
|
||||||
|
// which is typically used to store all SQLite databases.
|
||||||
|
else
|
||||||
|
{
|
||||||
$path = path('storage').'database'.DS.$config['database'].'.sqlite';
|
$path = path('storage').'database'.DS.$config['database'].'.sqlite';
|
||||||
|
}
|
||||||
|
|
||||||
return new PDO('sqlite:'.$path, null, null, $options);
|
return new PDO('sqlite:'.$path, null, null, $options);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue