php增删改查封装

php增删改查封装,第1张

概述php增删改查封装

PHP增删改查封装

首先创建一个名为“DB”的类;然后在“DB”类的构造方法中去连接数据库;再根据连接实例进行编写增删改查 *** 作;最后将“DB”类进行实例化并设置为全局变量即可。

封装代码:

<?PHP/** * 数据库配置信息 */define('DB_HOST','127.0.0.1');            //服务器define('DB_USER','root');                 //数据库用户名define('DB_PASSWORD','123456');           //数据库密码define('DB_name','TEST');                 //默认数据库define('DB_CHARSET','utf8');              //数据库字符集define('TIMEZONE',"PRC");                 //时区设置date_default_timezone_set(TIMEZONE);/** * 类名:DB * 说明:数据库 *** 作类 */class DB{    public $host;            //服务器    public $conn;            //数据库连接变量    /**     * DB类构造函数     */    public function DB($host=DB_HOST ,$username=DB_USER,$password=DB_PASSWORD,$db_name=DB_name)    {        $this->host = $host;        $this->username = $username;        $this->password = $password;        $this->db_name = $db_name;       $this->conn = MysqL_connect($host,$username,$password) or dIE ('数据库连接失败!错误原因:'.MysqL_error());        MysqL_select_db($db_name)or dIE('数据库选定失败!错误原因:'.MysqL_error());                MysqL_query("SET CHaraCTER SET utf8");    }    /**     * 关闭数据连接     */    public function close()    {        MysqL_close($this->conn);    }    /**     * @description调用方法用     * @param $sql     * @return array     */    public function queryAll($sql)    {        $this->open();        $rs = MysqL_query($sql,$this->conn);        $objList = array();        while($obj = MysqL_fetch_object($rs))        {            if($obj)            {                $objList[] = $obj;            }        }        $this->close();        return $objList;    }    /**     * description查询全部返回Json格式,通讯用     * @param $sql     * @return string     */    public function queryAllJson($sql)    {        echo $sql;        $this->open();        $rs = MysqL_query($sql,$this->conn);        $objList = array();        $i=0;        while($obj = MysqL_fetch_object($rs))        {            $objList[$i]=$obj;            $i++;        }        $this->close();        return Json_encode(array("result"=>"success",'data'=>$objList));    }    /**     * @description 插入数据到数据库中     * @param $tablename 表名     * @param array $columns 包含表中所有字段名的数组。默认空数组,则是全部有序字段名     * @param array $values  包含对应所有字段的属性值的数组     * @return int     */    public function insertData($tablename,$columns=array(),$values=array())    {        $sql = 'insert into '.$tablename .'( ';        for($i = 0; $i < sizeof($columns);$i ++)        {            $sql .= $columns[$i];            if($i < sizeof($columns) - 1)            {                $sql .= ',';            }        }        $sql .= ') values ( ';        for($i = 0; $i < sizeof($values);$i ++)        {            $sql .= "'".$values[$i]."'";            if($i < sizeof($values) - 1)            {                $sql .= ',';            }        }        $sql .= ' )';        $this->open();        MysqL_query($sql,$this->conn);        return true;//      $ID = MysqL_insert_ID($this->conn);//取得上一步 *** 作产生的ID(2)//      $this->close();(2)//      return $ID;//(2)    }    /**     * 通过表中的某一属性获取数据     */    public function getDataByAtr($tablename,$atrname,$atrValue){        @$data = $this->queryAll("SELECT * FROM ".$tablename." WHERE $atrname = '$atrValue'");        if(count($data)!=0)return $data;        return NulL;    }    /**     * description_     * 通过表中的"ID",删除记录     */    public function delete($tablename,$atrname,$atrValue){        echo $tablename;        $this->open();        $deleteResult = false;        if(MysqL_query("DELETE FROM ".$tablename." WHERE $atrname = '$atrValue'")) $deleteResult = true;        $this->close();        if($deleteResult) return true;        else return false;    }    /**     * 更新表中的属性值     */    public function updateParamByID($tablename,$atrname,$atrValue,$key,$value){        $db = new DB();        $db->open();        if(MysqL_query("UPDATE ".$tablename." SET $key = '$value' WHERE $atrname = '$atrValue' ")){  //$key不要单引号            $db->close();            return true;        }        else{            $db->close();            return false;        }    }    /*     * @description: 取得一个table的所有属性名     * @param: $tbname 表名     * @return:字符串数组     */    public function fIEldname($tablename){        $resultname=array();        $i=0;        $this->open();        $result = MysqL_query("SELECT * FROM ".$tablename);        while ($property = MysqL_fetch_fIEld($result)){            $resultname[$i++]=$property->name;        }        $this->close();        return $resultname;    }}

推荐教程:《PHP教程》 总结

以上是内存溢出为你收集整理的php增删改查封装全部内容,希望文章能够帮你解决php增删改查封装所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1009672.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存