首页 > 代码库 > 自己写好的pdo数据库抽象层 mysql为例

自己写好的pdo数据库抽象层 mysql为例

class pdo_database{
function __construct($type_database,$host_name,$dbname,$user_role,$pass_role,$sql){
   $dbms=$type_database;    
//数据库类型 Oracle 用ODI,对于开发者来说,使用不同的数据库,只要改这个,不用记住那么多的函数了
$host=$host_name; //数据库主机名
$dbName=$dbname;    //使用的数据库
$user=$user_role;      //数据库连接用户名
$pass=$pass_role;          //对应的密码
$dsn="$dbms:host=$host;dbname=$dbName";
 
     try {
$dbh = new PDO($dsn, $user, $pass); //初始化一个PDO对象,就是创建了数据库连接对象$dbh
echo "连接成功<br/>";
$dbh = null;
} catch (PDOException $e) {
die ("Error!: " . $e->getMessage() . "<br/>");
}
//默认这个不是长连接,如果需要数据库长连接,需要最后加一个参数:array(PDO::ATTR_PERSISTENT => true) 变成这样:
   $db = new PDO($dsn, $user, $pass, array(PDO::ATTR_PERSISTENT => true));
   $db->setAttribute(PDO::ATTR_CASE, PDO::CASE_UPPER); //设置属性
$db->query("set names utf8");
$rs = $db->query($sql);
$rs->setFetchMode(PDO::FETCH_ASSOC);
$result_arr = $rs->fetchAll();
dump($result_arr);
}
 }
 $pdo_mysql = new pdo_database("mysql","localhost","shunong","root","","SELECT * FROM sn_admin");