当前位置:首页 > CN2资讯 > 正文内容

微型php框架 include/mysql.class.php

2天前CN2资讯

<?php

defined('ACC')||exit('Access Denied');


// 封装mysql操作类,包括连接功能,及查询功能.


class mysql extends absdb{

    protected static $ins = null;


    protected $host;  // 主机名

    protected $user;  // 用户名

    protected $passwd; // 密码

    protected $db;      // 数据库名

    protected $port;    // 端口

    protected $conn = null;


    // 在内部操作,获得一个对象

    public static function getIns() {

        if(self::$ins === null) {

            self::$ins = new self();

        }


        $conf = conf::getIns();


        self::$ins->host = $conf->host;

        self::$ins->user = $conf->user;

        self::$ins->passwd = $conf->pwd;

        self::$ins->db = $conf->db;

        self::$ins->port = $conf->port;


        self::$ins->connect();

        

        self::$ins->select_db();

        self::$ins->setChar();


        return self::$ins;

    }


    // 不让外部做new操作,

    protected function __construct() {

        

    }



    // 连接数据库

    public function connect() {

        $this->conn = @mysql_connect($this->host,$this->user,$this->passwd,$this->port);

        if(!$this->conn) {

            $error = new Exception('数据库连不上',9);

            throw $error;

        }

    }


    // 发送sql查询

    public function query($sql) {

        $rs = mysql_query($sql,$this->conn);

        if(!$rs) {

            log::write($sql);

        }

        return $rs;

    }


    // 封装一个getAll方法

    // 参数:$sql

    // 返回: array,false

    public function getAll($sql) {

        $rs = $this->query($sql);

        if(!$rs) {

            return false;

        }


        $list = array();

        while($row = mysql_fetch_assoc($rs)) {

            $list[] = $row;

        }

        

        return $list;

       

    }


    // 封装一个getRow方法

    // 参数:$sql

    // 返回: array,false

    public function getRow($sql) {

        $rs = $this->query($sql);

        if(!$rs) {

            return false;

        }


        return mysql_fetch_assoc($rs);

    }


    // 封装一个getOne方法,

    // 参数: $sql

    // 返回: int,str(单一的值)

    public function getOne($sql) {

        $rs = $this->query($sql);

        if(!$rs) {

            return false;

        }


        $tmp = mysql_fetch_row($rs);

        return $tmp[0];

    }


    // 选库函数

    public function select_db() {

        $sql = 'use ' . $this->db;

        return $this->query($sql);

    }


    // 设置字符集的函数

    public function setChar() {

        $sql = 'set names utf8';

        return $this->query($sql);

    }


    // 自动生成insert语句,update语句并执行

    public function autoExecute($data,$table,$act='insert',$where='') {

    

        if($act == 'insert') {

            $sql = 'insert into ' . $table . ' (';

            $sql .= implode(',',(array_keys($data)));

            $sql .= ') values (\'';

            $sql .= implode("','",array_values($data));

            $sql .= "')";

        } else if($act == 'update') {

            if(!trim($where)) {

                return false;

            }

            

            $sql = 'update ' . $table . ' set ';

            foreach($data as $k=>$v) {

                $sql .= $k;

                $sql .= '=';

                $sql .= "'".$v."',";

            }

            

            $sql = substr($sql,0,-1);

            $sql .= ' where ';

            $sql .= $where;

        } else {

            return false;

        }


        //return $sql;

        return $this->query($sql);


    }

}


/*

$db = mysql::getIns('localhost','root','111111','php0620');


print_r($db);


*/




    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/26564.html

    分享给朋友:

    “微型php框架 include/mysql.class.php” 的相关文章

    搬瓦工:性能卓越的VPS服务平台,为您的项目提供最佳选择

    搬瓦工概述 在网上冲浪的时候,大家可能都听说过“搬瓦工”,但对于它的真正含义了解的并不多。搬瓦工(BandwagonHost)是一家以提供虚拟私人服务器(VPS)而闻名的公司,采用KVM架构,深受用户青睐。我在使用搬瓦工的过程中发现,选择这个平台的用户不仅因为它的价格相对较低,还因为它提供的服务非常...

    hncloud:助力企业数字化转型的云计算服务提供商

    在数字化浪潮席卷全球的今天,hncloud(华纳云)应运而生,成为一家备受瞩目的全球数据中心基础服务提供商。隶属于香港联合通讯国际有限公司的hncloud,凭借其在行业中的深厚积淀和技术实力,逐渐发展成为一颗闪耀于云计算领域的明星。作为APNIC和ARIN的会员单位,hncloud自有ASN号,为用...

    ColoCrossing:优质VPS与安全托管服务提供商解析

    在美国,ColoCrossing作为一家老牌且独立的服务器和托管服务提供商,一直以来以其优质的IT解决方案著称。这家成立多年的公司,致力于满足不同类型客户的需求,无论是面向亚太地区还是欧美市场,它都有相应的数据中心来支持各种使用场景。我个人觉得他们的服务理念是非常值得推崇的,特别是在稳定性和可靠性方...

    怎么在VPS上测速并提升网络性能

    在使用虚拟专用服务器(VPS)时,了解它的性能和网络速度是至关重要的。VPS的效率直接影响到网站的加载速度和用户体验。想想当你的网站访问速度慢,用户可能会不耐烦,从而导致访客流失。这可不是任何网站主想要发生的事情。所以,定期对VPS进行测速,找出潜在问题,并加以解决,是一个非常明智的选择。 测速不仅...

    香港低价服务器:经济实惠的选择与优势解析

    在如今数字化迅猛发展的时代,香港低价服务器凭借其独特优势,吸引了无数创业者、站长和企业用户的青睐。何为香港低价服务器?这类服务器主要是指在香港地区提供的,价格相对较低的服务器租用服务。由于其经济实惠的特性,许多小型企业和个人用户在选择服务器时,都会优先考虑这种选项。 在选择网络服务时,速度和价格往往...

    获取CloudCone优惠码,享受超值VPS主机折扣

    CloudCone 优惠码概述 在探索CloudCone之前,我想先聊聊关于优惠码的事情。CloudCone优惠码是指通过一些特定的方式获得的、可以享受价格折扣的代码。这些代码常常可以在购买VPS主机或其他服务时使用,帮助我节省一些开支。比如,有时候我能在优惠活动中找到让人心动的折扣,几乎是对我钱包...