You've already forked qlg.tsgz.moe
Init Repo
This commit is contained in:
@ -0,0 +1,65 @@
|
||||
<?php
|
||||
class LtDbConnectionAdapterPdo implements LtDbConnectionAdapter
|
||||
{
|
||||
public function connect($connConf)
|
||||
{
|
||||
// $option = array(PDO::ATTR_PERSISTENT => true);
|
||||
if (isset($connConf['pconnect']) && true == $connConf['pconnect'])
|
||||
{
|
||||
$option[PDO::ATTR_PERSISTENT] = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$option[PDO::ATTR_PERSISTENT] = false;
|
||||
}
|
||||
switch ($connConf['adapter'])
|
||||
{
|
||||
case "pdo_mysql":
|
||||
$dsn = "mysql:host={$connConf['host']};dbname={$connConf['dbname']}";
|
||||
break;
|
||||
case "pdo_sqlite":
|
||||
$connConf["host"] = rtrim($connConf["host"], '\\/') . DIRECTORY_SEPARATOR;
|
||||
if (!is_dir($connConf["host"]))
|
||||
{
|
||||
if (!@mkdir($connConf["host"], 0777, true))
|
||||
{
|
||||
trigger_error("Can not create {$connConf['host']}");
|
||||
}
|
||||
}
|
||||
$dsn = "{$connConf['sqlite_version']}:{$connConf['host']}{$connConf['dbname']}";
|
||||
break;
|
||||
case "pdo_pgsql":
|
||||
$dsn = "pgsql:host={$connConf['host']} port={$connConf['port']} dbname={$connConf['dbname']} user={$connConf['username']} password={$connConf['password']}";
|
||||
break;
|
||||
case "odbc":
|
||||
$dsn = "odbc:" . $connConf["host"];
|
||||
break;
|
||||
}
|
||||
return new PDO($dsn, $connConf['username'], $connConf['password'], $option);
|
||||
}
|
||||
|
||||
public function exec($sql, $connResource)
|
||||
{
|
||||
return $connResource->exec($sql);
|
||||
}
|
||||
|
||||
public function query($sql, $connResource)
|
||||
{
|
||||
return $connResource->query($sql)->fetchAll(PDO::FETCH_ASSOC);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @todo pgsql support
|
||||
*/
|
||||
public function lastInsertId($connResource)
|
||||
{
|
||||
return $connResource->lastInsertId();
|
||||
}
|
||||
|
||||
public function escape($sql, $connResource)
|
||||
{
|
||||
// quote返回值带最前面和最后面的单引号, 这里去掉, DbHandler中加
|
||||
return trim($connResource->quote($sql), "'");
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user