mysql 单例模式

42 篇文章 0 订阅
7 篇文章 0 订阅
require_once ('mysql_config.php');
	class msyql_db{ 
	  static private $_instance;
	  private $com;
	  private function __construct($db_host,$name,$db_name,$db_pwd){   //外部不能直接实例化
	   $this->com=mysql_connect($db_host,$name,$db_pwd) or die("链接数据库失败");
	   mysql_select_db($db_name);
	   mysql_query("set names utf8");
	  }
	
	  private function __clone(){}   //外部不能克隆类
	
	  static public function instance_com($dbhost,$name,$dbname,$sbpwd){
	   if(!isset(self::$_instance)){    //self表示类本身  调用静态属性时要使用 ::
	    self::$_instance= new self($dbhost,$name,$dbname,$sbpwd);  //实例化自己
	    return self::$_instance;
	   }else{
	
	     return self::$_instance;
	
	   }
	  }
	
	  function select($sql){ //获得多条数据,二维数组
	   	$result=mysql_query($sql);
	    $arr=array();
	    while($row=mysql_fetch_assoc($result)){
	    	$arr[]=$row;
	    }
	    return $arr;
	  }
	  
	  function select1($sql){
	  	$result=mysql_query($sql);
	  	return mysql_fetch_assoc($result);
	  }
	  
	  function count($sql){
	  		$result=mysql_query($sql);
	  		return mysql_num_rows($result);
	  }
	  
	  function query($sql){
	  	return mysql_query($sql);
	  }
	  
	  function get_last_id(){
	  	$sql="select last_insert_id() as last_id";
	  	$result=mysql_query($sql);
	  	$result=mysql_fetch_assoc($result);
	  	return $result["last_id"];
	  }
	  
	  function insert($post){  //insert 语句 合并字段和对应的值
  		$cloum="";
		$value="";
		foreach ($post as $k=>$v){
			if ($k!="type"){
				$cloum .= ",`".$k."`";
				$value .= ",'".$v."'";
			}
		}
		$cloum=substr($cloum,1);
		$value=substr($value,1);
		return array("cloum"=>$cloum,"value"=>$value);
	  }
	  
	  function update($post){ //update 语句 合并字段和对应的值
	  	$str="";
	  	foreach ($post as $k=>$v){
	  		if ($k!="type"){
	  			$str .= ",`".$k."`='".$v."'";
	  		}
	  	}
	  	return substr($str,1);
	  }
	  
	 }
	
	 //$test=new one("localhost","root","online","");
	
	 $db = msyql_db::instance_com($db_host,$db_user,$db_db,$db_pwd);  //调用静态方法的时候要使用::

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值