首页 > 后端开发 > php教程 > PHP电商购物车(二:封装数据库操作类)

PHP电商购物车(二:封装数据库操作类)

WBOY
发布: 2016-07-28 08:28:02
原创
1032 人浏览过

                                                                  PHP电商购物车———封装数据库操作类

        建立了数据库后,我们还是封装一个数据库的操作类吧(参考自付老师写的那个Mypdo,本文后再附加一篇PDO总结在学习总结模块)。

         

登录后复制
<?php
/**
 * 自己封装的Pdo操作类
 * User: hangfu
 * Date: 2016-6-24
 * Time: 16:36
 * version: 1.0.0.1
 */

class MyPdo{
    /**
     * @var Pdo  私有的PDO对象
     */
    private $pdo;
    /**
     * 构造方法,用于初始化PDO对象
     */
    public function __construct(){
登录后复制
        if(file_exists(_DIR_.&#39;db.ini&#39;)){        
                  $ini = parse_ini_file(&#39;db.ini&#39;);
            $dsn = $ini[&#39;db&#39;].":host=".$ini[&#39;host&#39;].";dbname=".$ini[&#39;dbname&#39;].";port=".$ini[&#39;host&#39;]
                .";charset=".$ini[&#39;charset&#39;];
        }else{
            die(&#39;配置文件不存在....&#39;);
        }
        $this->pdo = new PDO($dsn, $ini[&#39;username&#39;], $ini[&#39;userpwd&#39;]);
    }

    /**
     * 析构方法,用于销毁时同时销毁PDO对象
     */
    public function __destruct(){
        if($this->pdo)
            $this->pdo = null;
    }

    /**
     * 接收SQL(DML)语句并执行返回受影响的行数
     * @param $sql 传入的sql语句字符串
     */
    public function pdoExec($sql){
        return $this->pdo->exec($sql);
    }

    /**
     * 接收SQL(DQL)语句,该语句不带参数,执行并返回查询结果,返回的值为二维数组;如果没有结果,返回null
     * @param $sql 传入的sql语句字符串
     */
    public function pdoQuery($sql){
        $data = $this->pdo->query($sql);
        if($data){
            return $data->fetchAll(PDO::FETCH_NUM);
        }else{
            return null;
        }
    }
    /**
     * 接收SQL(DQL)语句,该语句不带参数,执行并返回查询结果,返回的值为二维数组;如果没有结果,返回null
     * @param $sql 传入的sql语句字符串
     * @param $objname 传入的对象名称,字符串格式
     */
    public function pdoQueryByObj($sql, $objname){
        $data = $this->pdo->query($sql);
        if($data){
            $datalist = array();
            while($info=$data->fetchObject($objname)){
                array_push($datalist, $info);
            }
            return $datalist;
        }else{
            return null;
        }
    }
    /**
     * 接收SQL(DQL)语句,该语句带参数,执行并返回查询结果,返回的值为二维数组;如果没有结果,返回null
     * @param $sql 传入的sql语句字符串
     * @param $arr 传入的参数值,数组格式
     */
    public function pdoPrepare($sql, $arr){
        $data = $this->pdo->prepare($sql);
        $bl = $data->execute($arr);
        if($bl){
            return $data->fetchAll(PDO::FETCH_NUM);
        }else{
            return null;
        }
    }
    /**
     * 接收SQL(DQL)语句,该语句不带参数,执行并返回查询结果,返回的值为二维数组;如果没有结果,返回null
     * @param $sql 传入的sql语句字符串
     * @param $objname 传入的对象名称,字符串格式
     * @param $arr 传入的参数值,数组格式
     */
    public function pdoPrepareByObj($sql, $objname, $arr){
        $data = $this->pdo->prepare($sql);
        $bl = $data->execute($arr);
        if($bl){
            $datalist = array();
            while($info=$data->fetchObject($objname)){
                array_push($datalist, $info);
            }
            return $datalist;
        }else{
            return null;
        }
    }
}

 
登录后复制
配置文件(和当前类文件在同一目录文件下)
###数据库类型
db=mysql
###数据库名称
dbname=phpwork
###服务器地址或名称
host=localhost
###数据库字符集
charset=utf8
###数据库端口号
port=3306
###操作的用户名
username=xuzhengyang
###操作的用户密码
userpwd=

登录后复制

 
 

   

以上就介绍了 PHP电商购物车(二:封装数据库操作类),包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板