<?php
class mysqlPDO
{
protected static $_instance = null;
protected $dbName = '';
protected $dsn;
protected $dbh;
//构造
private function __construct($dbHost, $dbUser, $dbPasswd, $dbName, $dbCharset)
{
try {
$this->dsn = 'mysql:host='.$dbHost.';dbname='.$dbName;
$this->dbh = new PDO($this->dsn, $dbUser, $dbPasswd);
$this->dbh->exec('SET character_set_connection='.$dbCharset.', character_set_results='.$dbCharset.', character_set_client=binary');
} catch (PDOException $e) {
$this->outputError($e->getMessage());
}
}
//防止克隆
private function __clone() {}
public static function getInstance($dbHost, $dbUser, $dbPasswd, $dbName, $dbCharset)
{
if (self::$_instance === null) {
self::$_instance = new self($dbHost, $dbUser, $dbPasswd, $dbName, $dbCharset);
}
return self::$_instance;
}
//执行
public function query($strSql, $queryMode = 'All', $debug = false)
{
if ($debug === true) $this->debug($strSql);
$recordset = $this->dbh->query($strSql);
$this->getPDOError();
if ($recordset) {
$recordset->setFetchMode(PDO
PDO封装mysql
最新推荐文章于 2024-06-30 16:59:44 发布
本文详细介绍了如何在PHP中使用PDO扩展进行MySQL数据库操作的封装,包括连接、查询、预处理语句、事务处理等关键功能,旨在提高代码的安全性和可维护性。
摘要由CSDN通过智能技术生成