亚洲乱码卡一卡二卡三永久-亚洲乱码一二三四区-亚洲乱码一区二区三区在线观看-亚洲伦理一区-成人在色线视频在线观看免费大全-成人在线91

/**
 * Description of pdo
 *
 * @author Administrator
 */
class ZcPdo {
    public  $dbh        = "";   //全局連接Object;
    //public  $sth        = "";   //預處理參數
    private $dsn        = "";
    private $user       = "";
    private $password   = "";
    public  $returnAy   = array('errcode' => '','errmsg' => '');
    
    //構造函數 - 初始化連接
    public function __construct($dsn, $user, $password) {
        $this->dsn      = $dsn;
        $this->user     = $user;
        $this->password = $password;
        $this->pdoConnect();
    }
    
    private function pdoConnect(){
        try {
            $this->dbh = new PDO($this->dsn, $this->user, $this->password);
            return $this->dbh;
        }
        catch (PDOException $e) {
            echo 'Connection failed: ' . $e->getMessage();
            exit();
        }
    }
    
    //設置PDO參數
    public function zcAttribute($attribute, $value){
        $this->dbh->setAttribute($attribute, $value);
    }
    
    public function zcLastId($name = NULL){
        return $this->dbh->lastInsertId($name);
    }
    //數據庫單語句執行操作
    public function zcExec($param) {
        try {
            $rows = $this->dbh->exec($param);//影響行數
            return $this->zcLog(TRUE, $rows);
        }
        catch (PDOException $e) {
            return $this->zcLog(FALSE, $e->getMessage());
        }       
    }
    
    //格式化數據
    public function zcQuote($string){
        return $this->dbh->quote($string);
    }
    
    //批量處理格式化數據
    public function zcBatchQuote($data){
        $result = "";
        if(!empty($data) && (is_array($data) || is_object($data))){
            foreach($data as $key => $value){
                if(!empty($value) && (is_array($value) || is_object($value))){
                    $result[$key] = $this->zcBatchQuote($value);
                }
                else{
                    $result[$key] = $this->zcQuote($value);
                }
            }
        }
        else {
            $result = $this->zcQuote($data);
        }
        return $result;
    }
    
    //數據庫預處理操作 - 獲取全部數據
    public function zcFetchAll($statement ,$parameter = NULL ,$type = PDO::FETCH_ASSOC){
        try{
            $sth = $this->dbh->prepare($statement);
            //$sth->execute($parameter);
            $sth->execute($this->zcBatchQuote($parameter));
            $result = $sth->fetchAll($type);
            if(!empty($result) && is_array($result)){
                return $this->zcLog(TRUE, $result);
            }
            else{
                return $this->zcLog(TRUE, NULL);
            }
        }
        catch (PDOException $e) {
            return $this->zcLog(FALSE, $e->getMessage());
        }
    }
 
    //數據庫預處理操作 - 獲取一行數據
    public function zcFetchRow($statement ,$parameter = NULL ,$type = PDO::FETCH_ASSOC){
        try{
            $sth = $this->dbh->prepare($statement);
            $sth->execute($this->zcBatchQuote($parameter));
            $result = $sth->fetch($type);
            if(!empty($result) && is_array($result)){
                return $this->zcLog(TRUE, $result);
            }
            else{
                return $this->zcLog(TRUE, NULL);
            }
        }
        catch (PDOException $e) {
            return $this->zcLog(FALSE, $e->getMessage());
        }
    }
 
    //數據庫預處理操作 - 獲取一個數據
    public function zcFetchOne($statement ,$parameter = NULL){
        try{
            $sth = $this->dbh->prepare($statement);
            $sth->execute($this->zcBatchQuote($parameter));
            $result = $sth->fetch(PDO::FETCH_NUM);
            if(!empty($result) && is_array($result)){
                return $this->zcLog(TRUE, $result[0]);
            }
            else{
                return $this->zcLog(TRUE, NULL);
            }
        }
        catch (PDOException $e) {
            return $this->zcLog(FALSE, $e->getMessage());
        }
    }
    
    //開始事務
    public function zcBegin(){
        $this->dbh->beginTransaction();
    }
 
    //提交事務
    public function zcCommit(){
        $this->dbh->commit();
    }
    
    //回滾事務
    public function zcRollBack(){
        $this->dbh->rollBack();
    }
 
    //預處理事務執行語句
    public function zcPtmTstQuery($statement ,$parameter = NULL){
        try{
            $this->zcBegin();
            $result = $this->dbh->prepare($statement)->execute($parameter);
            $this->zcCommit();
            return $this->zcLog(TRUE, $result);
        }
        catch (PDOException $e) {
            $this->zcRollBack();
            return $this->zcLog(FALSE, $e->getMessage());
        }
    }
 
    //預處理執行語句
    public function zcPtmQuery($statement ,$parameter = NULL){
        try{
            $result = $this->dbh->prepare($statement)->execute($parameter);
            return $this->zcLog(TRUE, $result);
        }
        catch (PDOException $e) {
            return $this->zcLog(FALSE, $e->getMessage());
        }
    }
    
    //Query執行
    public function zcQuery($statement,$type = PDO::FETCH_ASSOC){
        try{
            $result = $this->dbh->query($statement,$type);
            return $this->zcLog(TRUE, $result);
        }
        catch (PDOException $e) {
            return $this->zcLog(FALSE, $e->getMessage());
        }
    }
    
    //日志LOG
    public function zcLog($errcode , $errmsg){
        $this->returnAy = array();
        $this->returnAy['errcode'] = $errcode;
        $this->returnAy['errmsg'] = $errmsg;
        $this->returnAy['errtime'] = date("Y-m-d H:i:s",time());
        return $this->returnAy;
    }
}

 

穩定

產品高可用性高并發

貼心

項目群及時溝通

專業

產品經理1v1支持

快速

MVP模式小步快跑

承諾

我們選擇聲譽

堅持

10年專注高端品質開發
  • 返回頂部
主站蜘蛛池模板: 在线播放国产色视频在线 | 一级片一级毛片 | 午夜天堂| 精品在线免费视频 | 欧洲美女a视频一级毛片 | 毛片a级毛片免费播放100 | 欧美一级鲁丝片免费看 | 日韩精品免费观看 | 国产欧美一区二区三区观看 | 最近免费字幕中文大全在线观看 | 一区二区三区在线观看视频 | 欧美日韩免费在线观看 | 黄色三级在线视频 | 特级黄色毛片视频 | 欧美第四页| 黄色一级视频在线观看 | 小明www永久免费播放平台 | 99久久国产综合精品麻豆 | 男女无遮挡毛片免费视频 | 欧美在线观看免费一区视频 | 视频二区在线 | 国产亚洲人成网站在线观看不卡 | 午夜影视免费 | 国内精品免费麻豆网站91麻豆 | 欧美性群另类大交人妖 | 日韩高清的天堂在线观看免费 | 九九精品在线视频 | 成年人网站在线 | 亚洲激情五月 | 色老头在线观看精品 | 99re热视频 | 国产精品23p | 成人一区二区免费中文字幕 | 久久精品最新免费国产成人 | 国产精品久久久久久一区二区三区 | 波多野结衣一区二区三区在线观看 | 欧美日韩性视频在线 | 中文字幕无线码 | 精品亚洲福利一区二区 | 亚洲黄v | 性欧洲黑人巨大videos |